11 correcciones para el error «Error al crear la máquina virtual Java»
Hasta el día de hoy, Java es un lenguaje de programación popular. Puede estar desactualizado, pero con el tiempo no ha perdido su popularidad y utilidad. Todavía está en desarrollo activo y es utilizado por muchos desarrolladores. Los cambios y mejoras en el lenguaje se desarrollan con regularidad, lo que facilita la compilación y ejecución de aplicaciones basadas en Java.
¿Qué es Java en palabras simples?
Java es un lenguaje de programación ampliamente utilizado que se puede utilizar en una variedad de sistemas operativos y dispositivos. Tiene muchas aplicaciones que incluyen desarrollo web, aplicaciones móviles, aplicaciones de escritorio y programación del lado del servidor.
Java crea una máquina virtual (VM) para ejecutar código escrito en ese lenguaje. Si algo sale mal con los datos o el código que está procesando la máquina virtual de Java, es posible que la máquina virtual de Java no se inicie.
¿Qué es un error de máquina virtual de Java?
Un error de la máquina virtual de Java, a menudo denominado error de JVM, es un tipo de error que genera la máquina virtual de Java. Este error generalmente indica que la computadora no puede leer o entender el código.
Este error puede ocurrir por varias razones, incluso cuando la computadora no tiene instaladas las actualizaciones necesarias o es incompatible con Java. Es extremadamente importante comprender cómo solucionar un problema con la JVM si lo encuentra mientras usa una computadora.
En los últimos días, nos enteramos de que algunos clientes ven el mensaje de error «Error al crear la máquina virtual de Java». Según nuestra investigación, el problema suele ocurrir cuando el usuario intenta ejecutar un programa basado en Java.
¿Qué causa el error «Error al crear la máquina virtual de Java»?
Hay varias condiciones que conducirán a este problema:
- Java se ejecuta con argumentos u opciones incorrectos: cuando ejecuta un programa casero o intenta abrir una aplicación de código abierto conocida por causar inestabilidad en el sistema.
- La memoria de almacenamiento dinámico máxima global de Java no es suficiente: una de las causas más comunes de este problema es intentar ejecutar una aplicación Java con un tamaño máximo de memoria de almacenamiento dinámico superior al especificado en la variable del sistema.
- Se requieren credenciales de administrador para el ejecutable y/o programa de Java: esto puede ocurrir con aplicaciones que requieren acceso de administrador para funcionar correctamente.
Si está tratando de descubrir cómo solucionar el problema «No se pudo crear la máquina virtual de Java», este artículo le proporcionará algunas soluciones comprobadas. A continuación se muestra una lista de soluciones que otras personas en una situación similar han utilizado para resolver sus problemas.
Para obtener los mejores resultados, pruebe las soluciones a continuación en el orden en que se ofrecen hasta que encuentre la que funcione para su situación particular.
¿Cómo reparar el error de la máquina virtual Java?
Aquí hay soluciones para corregir los errores de la máquina virtual de Java:
- Agregar _JAVA_OPTIONS a las variables del sistema
- Abrir java.exe con derechos de administrador
- Reinstalar Java
- Corrección de errores con código
- Edición del archivo Eclipse.ini
- Comprobar la versión de Java compatible
- Actualice las variables Path y Java Home Environment.
- Comprobar los argumentos de lanzamiento
- Comprobar la sintaxis
- Comprobar la asignación de memoria
- Aumente la asignación de RAM para JVM (Java Virtual Machine)
Consideremos cada solución por separado:
Solución 1: agregar _JAVA_OPTIONS a las variables del sistema
La mayoría de los clientes afectados pudieron resolver el problema cambiando la variable del sistema Java denominada _OPCIONES DE JAVA a Xmx512M. Esto determina efectivamente el tamaño máximo de almacenamiento dinámico de memoria para Java a nivel mundial.
Esto eliminará cualquier mensaje de error porque el tamaño máximo de memoria en montón definido en la variable del sistema es mayor que el tamaño máximo de memoria en montón establecido en la aplicación de inicio de Java. Varios clientes con el mismo problema han declarado que después de seguir las instrucciones a continuación, el problema se resolvió por completo.
Para aumentar el tamaño máximo global de la memoria de almacenamiento dinámico, agregue el elemento _OPCIONES DE JAVA a las variables de su sistema de la siguiente manera:
1. Para abrir el cuadro de diálogo Ejecutar, presione la tecla de Windows + R. Luego, para abrir la página Propiedades del sistema, escriba sysdm.cpl y presione Entrar.
2. Haga clic en la pestaña Avanzado y seleccione Variables de entorno en la página Propiedades del sistema.
3. Haga clic en Nuevo en el campo Variables de entorno (bajo Variables del sistema).
4. Establezca el nombre de la variable en _OPCIONES DE JAVA y la variable en -Xmx512M en el panel Nueva variable del sistema, luego haga clic en Aceptar para guardar los cambios.
5. Para que los cambios surtan efecto, cierre todas las ventanas abiertas previamente y reinicie su computadora.
6. Abra el programa que anteriormente daba el error «Error al crear la máquina virtual de Java» la próxima vez que lo ejecute para ver si funciona correctamente.
Si aún recibe el mismo mensaje de error cuando ejecuta el programa, intente agregar la ruta de la Papelera de reciclaje de Java a una variable de entorno, que podría ser «%\RUTA DE USUARIO\Java\jdk1.6.0_39\bin».
Solución 2: abrir java.exe con privilegios de administrador
Varias personas con el mismo problema han podido solucionarlo forzando al ejecutable principal de Java (java.exe) a abrirse como administrador.
Después de aplicar esta actualización tanto al ejecutable principal de Java como al ejecutable del programa que muestra el mensaje de error, varios usuarios informaron que el problema se resolvió.
Aquí hay una breve descripción de todo:
1. Navegue a la ubicación de instalación de Java en el Explorador de archivos. Tendremos que navegar a la ubicación principal del ejecutable de Java (java.exe).
De forma predeterminada, debe estar en la carpeta Archivos de programa/Java/*versión de compilación de JRE*/bin. Según el entorno de tiempo de ejecución de Java que esté utilizando, la posición exacta variará.
2. Seleccione «Propiedades» en el menú contextual haciendo clic derecho en el archivo java.exe. Luego, en la pestaña Compatibilidad, seleccione «Ejecutar este software como administrador» y marque la casilla (en Configuración). Para guardar sus cambios, haga clic en Aplicar.
3. Repita el procedimiento haciendo clic con el botón derecho en el ejecutable de la aplicación (que provocó el error): Aplicación > Compatibilidad > Ejecutar este software como administrador.
4. Compruebe si la notificación del problema se resuelve ejecutando el programa.
Los derechos de administrador insuficientes también pueden causar un problema con la máquina virtual de Java. Como resultado, es posible que algunos usuarios deban otorgar derechos de administrador de Java.
Los usuarios pueden otorgar acceso de administrador de Java en Windows 10 siguiendo los pasos anteriores.
Solución 3: reinstalar Java
En algunos casos, el problema ocurre porque Java se instaló incorrectamente o porque su instalación se corrompió con el tiempo. Como resultado, después de desinstalar completamente Java, lo reinstalaremos en este punto. Para esto:
1. Para ingresar al mensaje Ejecutar, presione la tecla de Windows + R y escriba «Appwiz.cpl» o vaya directamente al panel de control.
2. La pantalla Programas y características aparecerá después de presionar Enter.
3. Desplácese por la lista de aplicaciones instaladas en la pantalla Programas y características hasta que encuentre Java.
4. Para eliminarlo del sistema, haga clic derecho sobre él y seleccione Eliminar.
5. Primero desinstale la instalación principal de Java y luego todas las instalaciones adicionales de Java, incluidas las actualizaciones y otras versiones.
6. Reinicie su computadora después de eliminar todo el software.
7. Después de reiniciar, vaya a esta página y descargue el último JRE.
8. Compruebe si hay algún problema.
9. Si el problema persiste, vaya aquí para obtener e instalar el JDK más reciente.
10. Si ya está utilizando el JDK, considere actualizar a otra versión o eliminar el JRE que viene con él.
Solución 4: corregir errores con código
Este error puede ocurrir por varias razones, incluso si hay ciertos errores en su código. Veremos algunos de ellos aquí.
Eliminar el guión: algunos usuarios informaron que reemplazar el doble guión «-» en su código con un solo guión «-» solucionó el problema. Considere el siguiente escenario:
Cambiar código:
“sony@sony-VPCEH25EN:~$ java –version
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
Unrecognized option: –version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. The program will exit.”
A
“sony@sony-VPCEH25EN:~$ java -version
Picked up JAVA_TOOL_OPTIONS: -javaagent:/usr/share/java/jayatanaag.jar
Unrecognized option: –version
Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. The program will exit.”
-Djava.endorsed.dirs=”C:\Archivos de programa\Apache Software Foundation\Tomcat 8.5\respaldado”
Asegúrese de agregar la entrada «-vm» encima de los argumentos de vm en su archivo eclipse.ini. De lo contrario, env vars seleccionará JVM V6.
Si está utilizando Ubuntu, debe tener en cuenta que solo se admite Java 8. Como resultado, se utilizará el tercer enfoque. Instale la versión anterior de Java después de desinstalar la actual.
Solución 5: Edición del archivo Eclipse.ini
Para solucionar este problema, podemos realizar cambios en el archivo Eclipes.ini. Lo hemos dividido en diferentes problemas, ya que puede haber varios problemas con la configuración que deben abordarse. Elige el que mejor se adapte a tu situación.
Uso de memoria reducido
1. Usando el bloc de notas, abra el archivo Eclipse.ini en la carpeta Eclipse.
2. Busque una línea que parezca “-Xmx256m” (podría ser -Xmx1024m o -Xmx 512m).
3. Ahora, dependiendo de la memoria RAM instalada en su computadora, cambie la cantidad predeterminada a un número más razonable y agregue el número de versión. Considere el siguiente escenario:
-Xmx512m
-Dosgi.requiredJavaVersion=1.6
OR
-Xmx512m
-Dosgi.requiredJavaVersion=1.7
OR
-Xmx512m
-Dosgi.requiredJavaVersion=1.8
4. Elimine el número «256m» de la línea «-launcher.XXMaxPermSize».
5. Compruebe si existe el problema.
jugueteando
1. Elimine las siguientes líneas de su archivo, si es posible.
-vm P:\Programs\jdk1.6\bin
2. También cambie las siguientes líneas.
set -Dosgi.requiredJavaVersion=1.5
A
set -Dosgi.requiredJavaVersion=1.6
3. También sobre la línea “-vmargs!”, intente agregar la siguiente línea.
-vm C:\Program Files (x86)\Java\jre6\bin\javaw.exe
4. Utilice también la siguiente línea para hacer referencia a JVM.dll.
-vm
C:\Program Files\Java\jre7\bin\client\jvm.dll
5. Reemplace “-vmargs” con la ruta a javaw.exe en el archivo de Eclipse. Considere el siguiente escenario:
-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20120522-1813.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.200.v20120522-1813
-product
com.android.ide.eclipse.adt.package.product
--launcher.XXMaxPermSize
256M
-showsplash
com.android.ide.eclipse.adt.package.product
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
**-vm “c:\Program Files\Java\jdk1.7.0_07\bin\javaw.exe”**
-Dosgi.requiredJavaVersion=1.6
-Xms40m
-Xmx768m
-Declipse.buildId=v21.1.0-569685
6. También puede intentar agregar la siguiente línea al final para ver si eso ayuda.
-vmargs
-Xms40m
-Xmx512m
-XX:MaxPermSize=256m
7. También vea si la eliminación de las siguientes líneas de eclipse.ini resuelve el problema.
-XX:+UseStringDeduplication
-XX:+UseG1GC
Si el problema persiste, puede intentar borrar el archivo eclipse.ini, que parece haber resuelto el problema para algunas personas, pero crea una copia de seguridad de antemano en caso de que la necesite. Además, antes de iniciar Java, asegúrese de que todas las aplicaciones que consumen mucha energía estén cerradas para garantizar que haya suficientes recursos disponibles.
Comprobación de corrupción JDK
1. Para iniciar el mensaje Ejecutar, presione Windows + R y escriba cmd.
2. Compruebe si el siguiente comando devuelve un error.
c:>\ java -version
3. Si ocurre algún problema, reinstale completamente el JDK.
Solución 6: verifique la versión de Java compatible
Cuando el código se compila en el IDE, se muestra el mensaje Error al construir la máquina virtual de Java. Esto se debe a que el IDE no es compatible con la versión de Java instalada en su computadora.
Compruebe qué versiones de Java admite su IDE. Luego determine qué Java está instalado y compárelo con la versión compatible. Instale la versión correcta si aún no está instalada.
Solución 7: actualice las variables de entorno de inicio de Path y Java
En Windows 10, las opciones de Java establecidas en las variables de entorno pueden generar el error Error al crear la máquina virtual de Java.
1. Abra el Explorador de archivos.
2. Copie y pegue lo siguiente en el shell del explorador de la barra de direcciones:::{BB06C0E4-D293-4f75-8A90-CB05B6477EEE}
3. En el panel izquierdo, seleccione Configuración avanzada del sistema.
4. Seleccione la opción «Avanzado» en el menú desplegable.
5. En la sección Variables del sistema, seleccione Variables de entorno y luego Nuevo.
6. Ingrese _OPCIONES DE JAVA en el campo de nombre.
7. Introduzca -Xmx1024M en el campo ruta/valor.
8. Haga clic en Aceptar.
9. Reinicie la aplicación.
También debe verificar que se proporcione la ruta correcta para el SDK de Java.
1. Navegue a C:\Archivos de programa en el Explorador de archivos\Java.
2. Abra la carpeta de la versión de JDK que desea utilizar.
3. Se debe copiar la ruta a la carpeta.
4. Variables del entorno (ver pasos anteriores).
5. Seleccione JAVA HOME en el menú de variables del sistema.
6. Seleccione Cambiar.
7. Haga clic en Aceptar después de ingresar la ruta copiada.
Solución 8: compruebe los argumentos de lanzamiento
Verifique su configuración inicial. Si bien es posible que tenga instalada la versión correcta de Java, las opciones de inicio pueden cambiar la versión utilizada para la compilación. Si realizó una actualización de Java en el lugar, es probable que las opciones de inicio aún sean de una versión anterior.
Solución 9 – Verifique la sintaxis
Asegúrese de que la sintaxis sea correcta para cualquier opción que ingrese. El problema «No se pudo crear la máquina virtual Java» puede ser causado incluso por el error más pequeño. Busque un guión adicional o una versión especificada incorrectamente.
Solución 10: compruebe la asignación de memoria
La memoria insuficiente asignada para su uso es una de las principales causas del problema Error al crear una máquina virtual Java.
1. Abra el Explorador de archivos.
2. Vaya a la carpeta C:\Archivos de programa\Java.
3. Abra la carpeta JDK con el número de versión instalada.
4. Localice y ejecute el archivo jvisualvm.exe.
5. El software proporciona una interfaz gráfica de usuario para la gestión de la memoria.
6. Aumente la cantidad de memoria y vuelva a intentarlo.
Solución 11: aumente la asignación de RAM para JVM (Java Virtual Machine)
Debe tener derechos de administrador para realizar estos cambios.
1. Presione la tecla de Windows y el botón Pause Break al mismo tiempo.
2. En la nueva ventana que aparece, seleccione Configuración avanzada del sistema.
3. Haga clic en el botón Variables de entorno en la parte inferior de la ventana Propiedades del sistema que aparece.
4. Aparecerá la ventana de variables de entorno. Haga clic en el botón Nuevo en la sección Variables del sistema.
5. Aparecerá una ventana para la nueva variable del sistema. Rellena los huecos con los valores apropiados.
- _OPCIONES JAVA es el nombre de la variable.
- -Xmx512M es un valor variable.
6. Haga clic en Aceptar.
6. Haga clic en el botón Aceptar en la sección Variables de entorno.
Conclusión
La configuración del entorno de desarrollo puede llevar mucho tiempo. Antes de poder escribir o compilar código, deberá configurar muchas cosas y cumplir muchos requisitos previos. Estos problemas no son específicos de Java; cada idioma tiene su propio conjunto de requisitos previos que se deben cumplir antes de poder utilizarlo.
Deja una respuesta