O atualizador Java em meu Mac instalou uma versão obscura do Java 10.0.1 que eu nunca tinha ouvido antes. O resultado é que TODOS os meus aplicativos Java não estão mais sendo executados, o que torna o Java inútil.

As instruções oficiais para remover o Java são:

  • sudo rm -fr / Library / Internet \ Plug-Ins / JavaAppletPlugin.plugin

Que é inútil porque Eu não uso Java no navegador (quem é maluco o suficiente para fazer isso?)

  • sudo rm -fr / Library / PreferencePanes / JavaControlPanel.prefPane

O que é inútil porque apenas remove o painel de preferências

  • sudo rm -fr ~ / Library / Application \ Support / Java

Que é inútil porque este diretório já está vazio

As instruções oficiais para remover o Java em um Mac não fazem absolutamente nada.

Se eu executar meus aplicativos Java com java -jar do terminal eles funcionam. No terminal, vejo o seguinte:

Então, a partir do terminal, a versão Java é 1.8.0_131, que é minha versão desejada. Na área de trabalho, quando eu inicio aplicativos com JavaAppLauncher, a versão Java é 10.0.1.

Como posso reverter este desastre que a Oracle fez com seu atualizador automático?

Resposta

Eu tive o mesmo problema: eu tinha o Java 8 instalado, mas depois instalei o 10. Então, removi o 10 e quando lancei um jar do o terminal seria executado na versão 8 e quando eu verificasse a versão com java -version no terminal, eu voltaria java version "1.8.0_181. No entanto, quando eu executei um .jar no Finder , ele seria executado na v.10, e também se eu fosse para o painel de preferências Java, a versão estava listada como versão 10. Isso era indesejável: eu era tentando remover v10 completamente.

Em seguida, excluí o JavaAppletPlugin com rm /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin e reinstalei o Java SE JDK 8 online, e pronto! agora está funcionando. Quando executo .jar, eles são executados em Java 8.

Sei que você mencionou isso em sua primeira etapa, mas deduzo que você não fez essa etapa. Se estiver errado sobre isso, você “tenho um problema diferente. Mas isso resolveu o meu.

Comentários

  • sim, eu não tentei excluir o plugin do miniaplicativo porque, de qualquer forma, eu o desativei no navegador
  • Faz todo o sentido. Mas, com base na minha experiência, parece que a presença do JavaAppletPlugin está afetando a versão do Java usada para executar aplicativos .jar do Finder. Para mim, excluí a JVM v10, mas apenas quando excluí o JavaAppletPlugin o localizador parou de usar a v10 para executar aplicativos .jar.

Resposta

Eu acredito que o problema é navegar para o diretório correto … Quando estiver onde deveria estar, você pode executar os comandos sudo para remover quaisquer versões do java que deseja remover.

Primeiro , execute o comando no terminal para determinar qual versão do Java você está e executando,

java -version 

então você pode navegar para a versão incômoda do java que você pretende excluir usando o seguinte comando:

cd /Library/Java/JavaVirtualMachines 

então, quando você vir que está no JavaVirtualMachines caminho, digite ls para ver quais versões do Java que você instalou,

ls 

e, finalmente, quando souber qual versão ou versões do Java deseja desinstalar:

sudo rm -rf jdk-10.0.1.jdk #or whichever version you want to delete 

Comentários

  • O problema é que a versão que o painel de controle mostra não corresponde à versão java no terminal. Se eu quiser remover o java 8.171, parece que não há como também: imgur.com/a/iIK67bD
  • E o jdk 10.0. 1 não estava presente nessa pasta
  • @Magnetic_dud você ainda deve ser capaz de depurar usando sua estrutura de diretório de arquivos usando o comando ls e, em seguida, excluir e reinstalar um novo Jdk funcional ou qualquer versão do java que você esteja instalando.
  • Simples e funcionou para mim. Obrigado!

Resposta

Se você tiver mais de uma versão do jdk:

$ ls -l /Library/Java/JavaVirtualMachines drwxr-xr-x 3 root wheel 96 30 avr 15:15 jdk-10.0.1.jdk drwxr-xr-x 3 root wheel 96 30 avr 15:24 jdk1.8.0_172.jdk drwxr-xr-x 3 root wheel 96 17 oct 10:59 jdk1.8.0_191.jdk 

mude sua JAVA_HOME

export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_191.jdk/Contents/Home 

Resposta

Eu baixei a versão antiga (de trabalho) de java.com

Na verdade, Java 8.171 é o download que é mostrado por padrão. Não sei por que ele foi atualizado automaticamente para 10.0.1 quando é de qualidade beta.

Agora, ele não vai instalar, diz “Desculpe, você tem o Java 10.0.1 mais recente e melhor”

Para instalar, execute os comandos aparentemente inúteis mencionados na pergunta. Java ainda funcionará no terminal, mas então o instalador permitirá que você instale a versão correta, 1.8_171

Agora, desabilite as atualizações, se você não quiser quebrar seus aplicativos novamente. Java é uma ameaça à segurança, ele deve ser atualizado mensalmente, então certifique-se de que está desabilitado em seu navegador.

Por algum motivo, se você executar a versão java, ainda obterá:

java version "1.8.0_131" Java(TM) SE Runtime Environment (build 1.8.0_131-b11) 

Que é outra versão errada. De qualquer forma, o importante é se agora seus aplicativos Java estão funcionando, certifique-se de que o plug-in do navegador esteja desativado para sua segurança.

Resposta

No meu caso, tinha dois JDK instalados em meu computador v11 e v7. Eu precisava executar o Eclipse Luna em meu computador para um projeto. Sempre que executo em cmd java -version, obtive java version 11.0..... etc. “

A solução para mim foi mudar a variável PATH; para apontar para o JDK com o qual eu precisava que o Eclipse fosse executado.

Então, basicamente, eu mudo de:

C:\Program Files\Java\jdk-11.0.2\bin 

para

C:\Java\JDK7\bin 

Agora, o resultado da execução de java -version é:

java version "1.7.0_76" 

Comentários

  • Agradeço sua resposta, mas parece ser uma resposta destinada ao Windows em uma postagem sobre o macOS.

Deixe uma resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *