2010-02-04 87 views
1

我對理解困惑,java解釋器和java編譯器如何從環境變量中搜索所需的所有必需jar文件。由於我只爲JDK目錄設置了設置路徑變量,但我沒有設置任何變量來搜索jvm需要的任何類庫。它如何搜索這些重要的jar文件?混淆理解類路徑

+1

你是指什麼類庫?哪個jvm需要?你的意思是JVM罐子?這些已經在classpath中,默認情況下。 – amorfis 2010-02-04 08:35:35

回答

4

您正在談論哪個jar文件? Java已經知道它擁有的jar文件(比如rt.jar) - 你不需要明確地告訴它們。這就是所謂的bootclasspath - 你可以覆蓋它,但通常你不想。

1

CLASSPATH是一個環境變量,就像路徑文件(它幫助窗口找到可執行文件)。它列出了JVM尋找類的所有地方。在啓動jvm和java編譯器時,您也可以在命令行上輸入classpath

2

爲了更好地理解JVM如何找到並加載類,請閱讀此內容。

http://java.sun.com/j2se/1.3/docs/tooldocs/findingclasses.html

+1

+1,但最近:http://java.sun.com/javase/6/docs/technotes/tools/findingclasses.html – trashgod 2010-02-04 17:24:54

+0

@trashgod感謝您指出了這一點。 沒有注意到它是爲1.3。 :(但是由於Java的向後兼容性,大多數概念仍然成立。 – 2010-02-04 17:56:48