Я использую Java в OS X в течение многих, многих лет, и недавно, когда Apple перестала включать Java по умолчанию, я позволяю ОС пойти и установить ее для меня (конечно, Apple).
Итак, теперь я использую OS X 10.8, и мне нужно установить Java 7, поэтому я просто получил Oracle Update 15 в форме DMG и запустил программу установки. Он обновил мои /usr/bin/java (и связанные файлы), чтобы указать здесь:
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
Отслеживание этого обратно в '/System/Library/Frameworks/JavaVM.framework/Versions' означает либо "Current", либо "CurrentJDK", первая из которых является ссылкой на "A" (которая является Oracle Java 7, начиная с что я могу сказать, не знаю, почему это "A" ), а последний является ссылкой на Apple Java 6 в "/System/Library/Java/JavaVirtualMachines/1.6.0.jdk".
Теперь все это действительно запутывает, но это еще не мой вопрос. Похоже, здесь установлен Java 7:
/System/Library/Frameworks/JavaVM.framework/Versions/A
Но здесь также установлен Java 7:
/Library/Java/JavaVirtualMachines/jdk1.7.0_15.jdk
Поиск "java" в обоих случаях и печать версии дает ту же версию и сборку (версия java "1.7.0_15" ), однако при хэшировании файлов они отличаются.
Значит ли это, что Oracle установила Java 7 в двух разных местах? Если да, то почему? Что я должен использовать? И почему некоторые вещи все еще указывают на Java 6 (CurrentJDK).
Я смотрел сайт Oracle, но ничего там ничего не очищает.