1.7 Os JDKs não entram em /System/Library/Frameworks , eles entram em /Library/Java/JavaVirtualMachines . Quando você executa /usr/bin/java , ele escolhe a instalação apropriada do Java para usar
- Se você tiver uma variável de ambiente
JAVA_HOMEdefinida, ela usará essa versão - Caso contrário, ele escolherá o "melhor" JDK instalado dentre os disponíveis em
/Library/Java/JavaVirtualMachinese/System/Library/Java/JavaVirtualMachines, você pode executar/usr/libexec/java_homepara ver qual deles o sistema considera como "melhor".
É claro que, se você tiver adicionado manualmente /Library/Java/JavaVirtualMachines/<something>/Contents/Home/bin ao seu PATH à frente de /usr/bin , então java significará essa versão específica, em vez daquela selecionada pelo sistema. Você pode verificar isso executando which java .
Para complicar ainda mais, há outra cópia do JRE em /Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home , que é a usada para plug-ins de navegador e para pacotes de .app de 1,7-estilo que não incorporam seu próprio JRE.