2008-09-30 22 views
8

以下是與Leopard一起安裝的目錄佈局。什麼是「A」目錄以及爲什麼「CurrentJDK」之外的「Current」目錄?在Mac OSX Leopard上解釋JVM目錄佈局

您似乎可以通過移動CurrentJDK鏈接輕鬆切換當前的JDK,但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 $ 

回答

6

的內容(ACurrent符號聯A)是Mac OS X框架,它是JavaVM.framework的結構的一部分。除了實際的JVM安裝之外,該框架可能包含C或Objective-C代碼。因此,除了包含JVM外,它還可能與某些C或Objective-C代碼鏈接。

請注意,您不應變化CurrentJDK鏈接到任何東西,但它是由Mac OS X中不像在其他平臺上設置爲指向,Java虛擬機在Mac OS X操作系統的服務,以這種方式更改它會使您處於不受支持(並且可能未經測試,不穩定等)配置。

2

如果你想恢復到一個較舊的JVM(這裏,1.5),你可以把下面的~/.profile(或粘貼到一個特定的終端窗口):

export JAVA_HOME="/System/Library/Frameworks/JavaVM.framework/Versions/1.5.0/Home/" 
export PATH=$JAVA_HOME/bin/:$PATH 
5

你應該使用Java Preferences命令來更改jvm版本。

如果您有聚光燈下你的硬盤上,你可以聚光燈「Java首」

+0

谷歌搜索提出了這個這也是有幫助的「Java首選項」 http://developer.apple.com/java/faq/ – 2008-09-30 14:32:18