No Mac OS X 10.7, o JDK fornecido pela Apple (Java 6) é instalado em / System / Library / Java / JavaVirtualMachines / portanto, basta excluí-lo de lá
O JDK fornecido pelo Oracle (Java 7) está instalado em / Library / Java / JavaVirtualMachines /
Com o fim das atualizações públicas do Java 1.6 em fevereiro de 2012 e a longa lista de atualizações de segurança no último 1.7, estou inclinado a remover o Java 1.6 e o JDK permanentemente do meu Mac, se eu soubesse como realizar isso de uma maneira limpa.
No Mac OS X 10.7, o JDK fornecido pela Apple (Java 6) é instalado em / System / Library / Java / JavaVirtualMachines / portanto, basta excluí-lo de lá
O JDK fornecido pelo Oracle (Java 7) está instalado em / Library / Java / JavaVirtualMachines /
Eu fiz a mesma pergunta até hoje.
De Os arquivos macosx-port-dev e Como desinstalar corretamente o Java 6 no OSX? :
I agree with the assessment below,
(Previous message)
I don’t know the answer to your question, but I can suggest that you might be causing yourself unneeded problems.
Security updates are important because of web sites that use Java maliciously. But you can’t use Java 6 on the web anyway. You can only run Java 7 for applets.
Java 6 is on your machine for legacy software that relies on it in standalone applications. The security issues aren’t going to impact these apps. The security issues are invariably sandbox violation tricks, and the standalone apps aren’t running Java sandboxed anyway.
no entanto, se você deseja livrar sua máquina do Java SE 6, o procedimento correto é:
Remova a JVM "system" instalada e mantida pela Atualização de Software
% sudo rm -rf /System/Library/Java/JavaVirtualMachines/1.6.0.jdk
Remover qualquer visualização de desenvolvedor Java
% sudo rm -rf /Library/Java/JavaVirtualMachines/1.6.0*.jdk
NÃO remova qualquer conteúdo no JavaVM.framework (Nota: em
/System/Library/Frameworks/JavaVM.framework
)Esses itens são exigidos pelo Java 7, 8, 9+ e pelo Java SE 6. Nenhuma versão moderna do OS X tem um Java JDK lá dentro.
Em relação à resposta acima, diz:
Do NOT remove any content in the JavaVM.framework (Note.: It under
/System/Library/Frameworks/JavaVM.framework
)
Vale a pena notar que /System/Library/Frameworks/JavaVM.framework
contém uma pasta Versions
e, pelo menos no meu caso, essa pasta Versions
continha:
lrwxr-xr-x 10 1.4 -> CurrentJDK
lrwxr-xr-x 10 1.4.2 -> CurrentJDK
lrwxr-xr-x 10 1.5 -> CurrentJDK
lrwxr-xr-x 10 1.5.0 -> CurrentJDK
lrwxr-xr-x 10 1.6 -> CurrentJDK
lrwxr-xr-x 10 1.6.0 -> CurrentJDK
drwxr-xr-x 238 A
lrwxr-xr-x 1 Current -> A
lrwxr-xr-x 59 CurrentJDK -> /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
Não parece útil deixar o CurrentJDK apontando para um diretório inexistente, então executei este comando na pasta /System/Library/Frameworks/JavaVM.framework/Versions
:
sudo ln -sf /Library/Java/JavaVirtualMachines/jdk1.8.0_05.jdk/Contents CurrentJDK
já que é onde meu novo JDK está instalado.
UPDATE: Depois de remover o Java 1.6 da minha máquina, da próxima vez que executei o PhpStorm, ele me disse que precisava baixar e instalar o tempo de execução do Java SE 6. Posteriormente, o link /System/Library/Frameworks/JavaVM.framework/Versions/CurrentJDK
foi redefinido para /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents
. Assim, parece que o 1.6 JDK (ou pelo menos a parte do JRE) pode continuar voltando, dependendo de outros aplicativos que você usa.