Объясните расположение каталога JVM в Mac OSX Leopard
Вопрос
Вот макет каталога, который был установлен вместе с Leopard.Что такое каталог "A" и почему "Текущий" каталог в дополнение к "CurrentJDK"?
Похоже, вы можете легко переключить текущий JDK, переместив ссылку CurrentJDK, но тогда содержимое в разделах Current и A будет не синхронизировано.
lrwxr-xr-x 1 root wheel 5 Jun 14 15:49 1.3 -> 1.3.1 drwxr-xr-x 3 root wheel 102 Jan 14 2008 1.3.1 lrwxr-xr-x 1 root wheel 5 Feb 21 2008 1.4 -> 1.4.2 lrwxr-xr-x 1 root wheel 3 Jun 14 15:49 1.4.1 -> 1.4 drwxr-xr-x 8 root wheel 272 Feb 21 2008 1.4.2 lrwxr-xr-x 1 root wheel 5 Feb 21 2008 1.5 -> 1.5.0 drwxr-xr-x 8 root wheel 272 Feb 21 2008 1.5.0 lrwxr-xr-x 1 root wheel 5 Jun 14 15:49 1.6 -> 1.6.0 drwxr-xr-x 8 root wheel 272 Jun 14 15:49 1.6.0 drwxr-xr-x 8 root wheel 272 Jun 14 15:49 A lrwxr-xr-x 1 root wheel 1 Jun 14 15:49 Current -> A lrwxr-xr-x 1 root wheel 3 Jun 14 15:49 CurrentJDK -> 1.5 steve-mbp /System/Library/Frameworks/JavaVM.framework/Versions $
и содержание
-rw-r--r-- 1 root wheel 1925 Feb 29 2008 CodeResources drwxr-xr-x 34 root wheel 1156 Jun 14 15:49 Commands drwxr-xr-x 3 root wheel 102 Mar 6 2008 Frameworks drwxr-xr-x 16 root wheel 544 Jun 14 15:49 Headers -rwxr-xr-x 1 root wheel 236080 Feb 29 2008 JavaVM drwxr-xr-x 29 root wheel 986 Jun 14 15:49 Resources steve-mbp /System/Library/Frameworks/JavaVM.framework/Versions/A $
Решение
Тот самый (A
, Current
символический -связан с A
) является частью структуры фреймворка Mac OS X, который JavaVM.framework
есть.Этот фреймворк может содержать код на C или Objective-C в дополнение к фактическим установкам JVM.Таким образом, он потенциально может быть связан с каким-либо кодом C или Objective-C в дополнение к тому, что содержит JVM рядом с этим.
Обратите внимание, что вы не следует измените CurrentJDK
ссылка, указывающая на что угодно, кроме того, на что она настроена в Mac OS X.В отличие от других платформ, виртуальная машина Java является службой операционной системы в Mac OS X, и изменение ее таким образом приведет к созданию неподдерживаемой (и потенциально непроверенной, нестабильной и т.д.) Конфигурации.
Другие советы
Вы должны использовать команду Java Preferences, чтобы изменить версию jvm.
Если у вас есть spotlight на вашем жестком диске, вы можете просто указать "Настройки Java".
Если вы хотите вернуться к более старой JVM (здесь, 1.5), вы можете поместить следующее в свой ~/.profile
(или вставьте его в определенное окно терминала):
export JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/"
export PATH=$JAVA_HOME/bin/:$PATH