Alguns usuários estão encontrando o erro Não foi possível criar a máquina virtual Java ao tentar iniciar um aplicativo que está usando Java. Foi relatado que esse problema específico ocorre com o Minecraft e vários outros aplicativos desenvolvidos em Java.
O que está causando o erro Não foi possível criar a máquina virtual Java?
Investigamos esse problema específico analisando vários relatórios de usuários e as estratégias de solução de problemas que eles usaram para resolver a mesma mensagem de erro. Com base em suas conclusões, há alguns cenários que desencadearão esse problema específico:
- Java é invocado por argumentos ou opções errados - Isso pode ocorrer se você estiver executando um aplicativo caseiro ou tentando abrir um aplicativo de código aberto que é conhecido por causar instabilidade no sistema.
- A memória heap máxima global Java não é alta o suficiente - Uma das causas mais comuns de por que você pode encontrar esse erro específico é tentar iniciar um aplicativo Java com um tamanho máximo de memória heap maior do que aquele definido como a Variável do sistema .
- O executável e / ou aplicativo Java requer privilégios administrativos - Isso pode acontecer com aplicativos que precisam de acesso de administrador para funcionar corretamente.
Se você está procurando uma maneira de resolver o erro Não foi possível criar a máquina virtual Java , este artigo fornecerá várias estratégias de solução de problemas verificadas. Abaixo, você encontra uma coleção de métodos que outros usuários em uma situação semelhante usaram para resolver o problema.
Para garantir os melhores resultados, siga os métodos abaixo na ordem em que são apresentados até descobrir um método eficaz para resolver o erro em seu cenário específico.
Método 1: adicionando _JAVA_OPTIONS às variáveis do sistema
A maioria dos usuários afetados conseguiu resolver o problema criando uma variável de sistema para Java chamada _JAVA_OPTIONS e definindo seu valor como Xmx512M . O que isso essencialmente faz é definir o tamanho máximo da memória heap global para Java.
Isso resolverá qualquer mensagem de erro que ocorra porque o tamanho máximo da memória heap do aplicativo Java iniciado é maior do que aquele definido como Variável do Sistema. Vários usuários que encontraram o mesmo problema relataram que o problema foi totalmente resolvido após a execução das etapas abaixo.
Aqui está o que você precisa fazer para adicionar uma entrada _JAVA_OPTION S nas variáveis do sistema para aumentar o tamanho máximo da memória heap global:
- Pressione a tecla Windows + R para abrir uma caixa de diálogo Executar . Em seguida, digite “ sysdm.cpl ” e pressione Enter para abrir a tela Propriedades do sistema .
- Na tela Propriedades do sistema , vá para a guia Avançado e clique em Variáveis de ambiente.
- Na janela Variáveis de ambiente , clique em Novo (em Variáveis do sistema ).
- Dentro da janela Nova Variável do Sistema , defina o nome da Variável como _JAVA_OPTIONS e o valor da Variável como - Xmx512M e clique em Ok para salvar as alterações.
- Feche as janelas abertas anteriormente e reinicie sua máquina para aplicar as alterações.
- Na próxima inicialização, abra o aplicativo que estava exibindo o erro Não foi possível criar a máquina virtual Java e veja se agora está funcionando corretamente.
Se você ainda estiver vendo a mesma mensagem de erro no início do aplicativo, tente adicionar o caminho Java Bin que pode ser semelhante a “% \ USER PATH \ Java \ jdk1.6.0_39 \ bin” à variável de ambiente conforme indicado em o método acima e veja se funciona.
Método 2: abrindo java.exe com direitos de administrador
Vários usuários que lutam para resolver o mesmo problema conseguiram resolver o problema depois de forçar o executável Java principal (java.exe) a abrir com privilégios administrativos.
Alguns usuários relataram que conseguiram resolver o problema depois de aplicar essa correção no executável java principal e no executável do aplicativo que está exibindo a mensagem de erro.
Aqui está um guia rápido de tudo isso:
- Abra o File Explorer e navegue até o local de instalação do java. Precisamos chegar à localização do executável Java principal ( java.exe ). Por padrão, você deve encontrá-lo em Arquivos de programas / Java / * versão de compilação JRE * / bin. A localização exata será diferente dependendo de qual Java Runtime Environment você está usando.
Nota: Se você instalou o Java em um local personalizado, navegue até o local personalizado.
- Clique com o botão direito em java.exe e escolha Propriedades . Em seguida, vá para a guia Compatibilidade e marque a caixa associada a Executar este programa como administrador (em Configurações). Clique em Aplicar para salvar as alterações.
- Clique com o botão direito do mouse no executável do aplicativo (aquele que está disparando o erro) e repita o mesmo procedimento: Compatibilidade> Executar este programa como administrador> Aplicar .
- Execute o aplicativo e veja se a mensagem de erro foi resolvida.
Método 3: Reinstalando o Java
Em alguns casos, o erro é disparado porque o Java pode não ter sido instalado corretamente ou sua instalação pode ter sido corrompida com o tempo. Portanto, nesta etapa, iremos reinstalar o Java após desinstalá-lo completamente. Por isso:
- Pressione a tecla Windows + R para abrir o prompt Executar e digite “Appwiz.cpl”.
- Pressione “Enter” e a tela Programas e Recursos será aberta.
- Na tela Programas e Recursos , role pela lista de aplicativos instalados até encontrar o Java.
- Clique com o botão direito e selecione “Desinstalar” para removê-lo completamente do sistema
- Primeiro, exclua a instalação Java primária e, posteriormente, você também deve remover todas as outras instalações Java, como atualizações e outras versões.
- Após desinstalar todas as instalações, reinicie o seu computador.
- Após a inicialização, visite este link e baixe a versão mais recente do JRE.
- Verifique se o problema persiste.
- Se o erro ainda persistir, baixe e instale a versão mais recente do JDK aqui.
Nota: Se você já estiver usando o JDK, tente alterar suas versões ou desinstalar o JRE que foi instalado junto com ele.
- Verifique se o problema ainda existe.
Método 4: corrigindo erros com código
Existem diferentes motivos por trás desse erro e alguns deles incluem se você tem alguns erros específicos com seu código. Vamos destacar alguns abaixo.
- Remover hífen : alguns usuários notaram que o erro foi corrigido alterando o hífen duplo “-” para um único “-” em seu código. Por exemplo:
Mude o código
“Sony @ sony-VPCEH25EN: ~ $ java –version
JAVA_TOOL_OPTIONS recolhido: -javaagent: /usr/share/java/jayatanaag.jar
Opção não reconhecida: –version
Erro: não foi possível criar a Java Virtual Machine.
Erro: ocorreu uma exceção fatal. O programa irá encerrar."
Para
“Sony @ sony-VPCEH25EN: ~ $ java -version
JAVA_TOOL_OPTIONS recolhido: -javaagent: /usr/share/java/jayatanaag.jar
Opção não reconhecida: –version
Erro: não foi possível criar a Java Virtual Machine.
Erro: ocorreu uma exceção fatal. O programa irá encerrar."
- Além disso, tente remover a seguinte linha de seu argumento
-Djava.endorsed.dirs = ”C: \ Arquivos de programas \ Apache Software Foundation \ Tomcat 8.5 \ endorsed”
- Abra seu arquivo eclipse.ini e certifique-se de adicionar a entrada “-vm” acima dos args vm, caso contrário, JVM V6 será selecionado em env vars.
- Se estiver no Ubuntu, você deve saber que o Java 8 é a única versão compatível. Portanto, usando o terceiro método. Desinstale o Java e instale a versão anterior.
Método 5: Editando Arquivo Eclipse.ini
Também podemos ajustar as coisas dentro do arquivo Eclipes.ini para nos livrarmos desse problema. Pode haver alguns problemas com sua configuração que precisam ser resolvidos, portanto, nós o dividimos em problemas separados. Siga aquele que melhor se adapta ao seu cenário.
Reduzindo o uso de memória
- Abra o arquivo Eclipse.ini dentro da pasta Eclipse com o bloco de notas.
- Encontre a linha semelhante a “-Xmx256m” (pode ser -Xmx1024m ou -Xmx 512m).
- Agora mude o valor padrão para um valor mais razoável dependendo da RAM instalada em seu computador e adicione o número da versão a ele também. Por exemplo:
-Xmx512m -Dosgi.requiredJavaVersion = 1,6 OU -Xmx512m -Dosgi.requiredJavaVersion = 1,7 OU -Xmx512m -Dosgi.requiredJavaVersion = 1,8
- Além disso, tente remover o valor “256m” da linha “-launcher.XXMaxPermSize”.
- Verifique se o problema persiste.
Mexer
- Try to remove the following lines from your file.
-vm P:\Programs\jdk1.6\bin
- Also, change the following lines.
set -Dosgi.requiredJavaVersion=1.5 TO set -Dosgi.requiredJavaVersion=1.6
- Also, try adding the following line above “-vmargs!” line.
-vm C:\Program Files (x86)\Java\jre6\bin\javaw.exe
- Also, point to JVM.dll using the following line.
-vm C:\Program Files\Java\jre7\bin\client\jvm.dll
- Open the Eclipse file and replace “-vmargs” with the path of javaw.exe. For Example:
-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
- Also, you can place the following line at the end and check if that works.
-vmargs -Xms40m -Xmx512m -XX:MaxPermSize=256m
- Furthermore, try removing the following lines from the eclipse.ini and check if that works.
-XX:+UseStringDeduplication -XX:+UseG1GC
- Você também pode tentar remover o arquivo eclipse.ini se o problema ainda persistir, pois isso já corrigiu o problema para alguns, mas lembre-se de fazer um backup primeiro, caso precise. Além disso, tente fechar todos os aplicativos que consomem muita energia antes de iniciar o Java para garantir que os recursos adequados estejam disponíveis.
Verificando corrupção de JDK
- Pressione “Windows” + “R” para abrir o prompt Executar e digite “cmd”.
- Digite o seguinte comando e verifique se há um erro.
c: \> versão java
- Se der um erro, reinstale o JDK completamente.