簡體   English   中英

使用控制台時出現java.lang.NoClassDefFoundError

[英]java.lang.NoClassDefFoundError when using console

我在通過控制台執行程序時遇到問題。 它總是拋出java.lang.NoClassDefFoundError,但是如果我使用netbeans運行相同的應用程序,它將運行完美。我該怎么辦?

您可以通過在運行Java程序時提供選項“ -cp”或“ -classpath”來在Java中添加類路徑。

設置classpath如下所示:

 Set CLASSPATH=.;/com/test/classes

 java -cp $CLASSPATH Test

默認情況下,Java CLASSPATH指向由“。”表示的當前目錄。 並且它將僅在當前目錄中查找任何類。

您的類路徑設置不同,即當您從控制台運行相同代碼時,NetBeans中類路徑上的jar不在類路徑上。

一個快速的代碼片段,輸出您的類路徑中的內容:

ClassLoader cl = ClassLoader.getSystemClassLoader();

URL[] urls = ((URLClassLoader)cl).getURLs();

for(URL url: urls){ System.out.println(url.getFile()); }

在控制台中,使用-cp選項添加必要的jar。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM