當我在系統變量中將CLASSPATH
變量更改爲JUNIT_HOME/junit-4.12.jar
時,我的Java命令停止工作。將CLASSPATH更改爲JUNIT_HOME/junit-4.12.jar,java命令停止工作
例如,當我想執行一個類文件時,我得到錯誤「找不到或加載主類」,雖然javac
工作正常。
當我刪除CLASSPATH
時,java
命令再次開始工作。
當我在系統變量中將CLASSPATH
變量更改爲JUNIT_HOME/junit-4.12.jar
時,我的Java命令停止工作。將CLASSPATH更改爲JUNIT_HOME/junit-4.12.jar,java命令停止工作
例如,當我想執行一個類文件時,我得到錯誤「找不到或加載主類」,雖然javac
工作正常。
當我刪除CLASSPATH
時,java
命令再次開始工作。
CLASSPATH
變量是告訴應用程序(包括JDK工具)在何處查找用戶類的一種方式。當您執行java命令啓動Java應用程序時,它將啓動Java運行時環境,加載指定的類並調用該類的主要方法。
如果您的CLASSPATH
變量設置爲JUNIT_HOME/junit-4.12.jar
,則只會加載JUNIT_HOME/junit-4.12.jar
中的類。因此,您將收到一個Could not find or load main class
錯誤。
指定類路徑的首選方法是使用-cp
命令行開關。這允許爲每個應用程序單獨設置CLASSPATH
而不影響其他應用程序。
類路徑的默認值爲"."
,表示僅搜索當前目錄。如果您還想在其他目錄中找到類文件,請在c:\otherDirectory
中說類,則可以將類路徑設置爲以下內容:
java -classpath ".;c:\otherDirectory"
你是否有更多需要走上classpath的jar? JUNIT僅用於測試目的,我猜你需要在類路徑中添加所使用的所有依賴關係。 另一方面,通過系統環境變量來做這件事不是一個好主意。請參閱java -classpath
命令,然後您可以爲一個應用程序或命令添加類路徑依賴關係。