我對這兩個術語感到困惑。Class Path和Build Path有什麼區別
另外我應該怎麼做在Spring MVC項目的src文件夾下創建一個文件? 當我創建使用File對象時,它創建了C:\ SpringSourceTool中的文件...我想這是ClassPath的權利?
如何獲得applicationcontext
文件夾或應用程序的根目錄?
我對這兩個術語感到困惑。Class Path和Build Path有什麼區別
另外我應該怎麼做在Spring MVC項目的src文件夾下創建一個文件? 當我創建使用File對象時,它創建了C:\ SpringSourceTool中的文件...我想這是ClassPath的權利?
如何獲得applicationcontext
文件夾或應用程序的根目錄?
構建路徑用於構建您的應用程序。它包含編譯應用程序所需的所有源文件和所有Java庫。
類路徑用於執行應用程序。這包括運行java應用程序所需的所有java類和庫。 Classpath是必需的,默認路徑是.
,如果java虛擬機找不到用戶定義的路徑,則使用該路徑。 (CLASSPATH
環境變量,-cp
標誌或罐子清單中的Class-Path:
屬性)
每個Java項目都有自己的構建路徑,指定編譯項目所需的所有依賴項。這些依賴關係可能來自工作區中的其他Java項目,Java歸檔.jar文件或包含.class文件的文件夾。
在CLASSPATH環境中,您只需指定.class文件(即jar文件,zip文件 - 內部jar文件,zip文件只能找到java類),即您正在幫助Java虛擬機(JVM)查找Java類文件
而且我應該怎麼做才能創造一個Spring MVC的 項目的src目錄下的文件 ?當我創建使用文件 反對它創建的文件中 C:\ SpringSourceTool ...
這是JVM啓動後,如果你想別人創建文件,其中,使用從這裏相對路徑。
在運行時使用類路徑來加載編譯的類和資源。
編譯時使用構建路徑來查找構建項目所需的依賴關係。
您可以說類路徑用於定位'.class'文件(和其他編譯資源),而構建路徑用於查找需要編譯的源文件嗎? – Adam 2017-02-25 00:49:53
@亞當我不認爲這是完全正確的。構建路徑有時需要.class文件來編譯源文件。所以構建路徑也使用幕後的類路徑。如果您花費一些時間使用java CLI編譯和運行java項目,您可以看到這一點。 javac和java命令都有一個類路徑選項,因爲它們都可能需要它。 – 2018-01-19 20:46:14
classpath是通知Java編譯器和Java運行時找到編譯類的位置的常規方式。它通常是一系列JAR文件名和目錄名。由編譯器和運行時系統所使用的類路徑不必須相同,但它們通常「應該是*,尤其是對於一個小項目。
的Buildpath不是標準的Java術語,它是長期對於典型的IDE指定組成應用程序的「模塊」或「項目」之間關係的更豐富的方式,IDE使用它來找出編譯Java代碼的類路徑和源路徑以及運行它的類路徑。 IDE還使用構建路徑來找出如何將代碼及其依賴關係打包爲(例如)WAR文件。
例如,項目的Eclipse構建路徑包括其依賴的其他項目,並列出項目包含/依賴的其他任何項目庫JAR。它還列出了當前項目中下游項目可以依賴的軟件包。
(如果你使用Maven,爲您的項目中,IDE構建路徑機制是繼發於POM文件中聲明的依賴關係。例如,使用Eclipse與m2eclipse的,在構建路徑從POM文件合成。)
但javac需要一個類路徑參數。可以說,這個參數「重載」用於指定構建路徑嗎? – aioobe 2010-08-20 10:00:45
編號_classpath_參數是編譯器提示他應該在運行時提供/提供的參數,因爲您不會構建自己使用的每個類(例如JFC,Libraries,...)。 _buildpath_包含源和/或源/編譯的依賴關係以及在哪裏查找它們。 – 2010-08-20 10:18:17
開發插件時,我將所有需要的庫添加到類路徑中,但無法導入任何內容。 Eclipse直到我將它們添加到構建路徑時纔看到它們。 – Bax 2012-10-11 13:25:16