在Mac OSX Leopard上解释JVM目录布局

s_t*_*v_e 8 java macos jvm

这是随Leopard一起安装的目录布局.除了"CurrentJDK"之外,什么是"A"目录以及"Current"目录的原因是什么?

看起来你可以通过移动CurrentJDK链接轻松切换当前的JDK,但是当前和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 $ 

和A的内容

-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 $ 

Chr*_*son 6

(A,Current符号链接A)是Mac OS X框架结构的一部分,即JavaVM.framework.除了实际的JVM安装之外,该框架中还可能包含C或Objective-C代码.因此,除了包含JVM之外,它还可能与某些C或Objective-C代码相关联.

请注意,您不应CurrentJDK链接更改为指向Mac OS X设置的任何内容.与其他平台不同,Java虚拟机是Mac OS X上的操作系统服务,以这种方式更改它会使您处于不受支持(可能未经测试,不稳定等)的配置中.


Mil*_*ous 5

您应该使用Java Preferences命令更改jvm版本.

如果您对Harddisk有所了解,您可以只关注"Java首选项"