缺省值“.”意味著用戶類文件是當前目錄中的所有類文件(如果是在包中,則為當前目錄下的)。
CLASSPATH 環境變量的值,它覆蓋缺省值。
命令行選項 -cp 或 -classpath 的值,它覆蓋缺省值和 CLASSPATH 值。
-jar 選項指定的 JAR 歸檔,它覆蓋所有其它值。如果使用該選項,則所有用戶類都來自指定的歸檔。
Java 啟動器如何查找 JAR-CLASS-PATH 類
JAR 文件通常包含一個“清單” - 該文件列出 JAR 的內容。清單可以定義 JAR-CLASS-PATH ,而后者進一步擴展類路徑(僅當從該 JAR 中加載類時)。查找 JAR-CLASS-PATH 訪問的類時將按以下順序進行:
通常,查找 JAR-CLASS-PATH 項引用的類時,即將其當作 JAR 文件的一部分。出現在 JAR-class-path 中的 JAR 文件將在 JAR-CLASS-PATH 前面的類路徑項之后及 JAR-CLASS-PATH 后面的類路徑項之前進行搜索。
然而,如果 JAR-CLASS-PATH 指向一個已搜索過的 JAR 文件(例如擴展或在類路徑前面列出的 JAR 文件),則不再搜索該 JAR 文件(這種優化方式提高了效率,防止了循環搜索)。這樣的 JAR 文件將在它出現的地方(類路徑中更靠前的地方)進行搜索。
如果 JAR 文件作為擴展安裝在 jdk 的 ext 子目錄中,則忽略它所定義的 JAR-CLASS-PATH。我們假定擴展所需的所有類都是 JDK 的一部分或已作為擴展安裝。
延伸閱讀
文章來源于領測軟件測試網 http://www.kjueaiud.com/