Se você instalar o JDK através do Oracle DMG, você obtém o conteúdo colocado
/Library/Java/JavaVirtualMachines/jdk1.7.0_xx/Content/Home/bin
bem como
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/
Existe basicamente uma duplicação completa de binários nesses dois diretórios e eles não são links sym / hard entre si. No último caso, o diretório atual é um link simbólico para o diretório A no mesmo nível. No entanto, isso não explica como isso é relevante para o diretório anterior ( /Libraray/Java/...
).
/usr/bin/java*
é / são vinculados por símbolos aos binários no diretório /System/Library/Frameworks/
....
Existe alguma rima sobre o motivo pelo qual é assim que o Java é organizado no OSX?
Outra observação:
> /usr/libexec/java_home
gera:
/Library/Java/JavaVirtualMachines/jdk1.7.0_65.jdk/Contents/Home
Portanto, enquanto o executável /usr/bin/java
aponta para o local /System/Library/Framework/....
, o script java_home gera um caminho para o diretório Início no /Library/Java/JavaVirtualMachines/...
Esta é uma bagunça muito francamente - por que isso é assim?