[英]NOClassDefFound error while running a simple java program
這段代碼可以很好地編譯,但是每當我嘗試運行時,都會顯示NoClassDefFound錯誤。 請問可能的原因和解決方法。
package myPack;
public class PasswordVerification
{
public boolean verify(String usrId, String pass)
{
if(usrId.equals("pranjut")&&pass.equals("password"))
{
return true;
}else
{
return false;
}
}
public static void main(String [] main)
{
PasswordVerification vp=new PasswordVerification();
System.out.println(vp.verify("pranjut","password"));
}
}
您確定使用正確的軟件包名稱前綴(即“ java myPack.PasswordVerification”)進行呼叫嗎?
此外,您可以進行一些改進-
您可以通過刪除“ else”子句來簡化-您實際上只需要1行
返回“ prajnut” .equals(id)&&“ password” .equals(pass):
確保您位於包含myPack文件夾的目錄中。 您不應位於myPack文件夾中。 我只是在Linux機器上嘗試過,它看起來自動將工作文件夾包括在類路徑中,但前提是未設置CLASSPATH環境變量。 如果已設置,則應將當前文件夾添加到其中,或在命令行上指定類路徑,如下所示:
java -cp . myPack.PasswordVerification
確保您在根項目中。
如果您在其他類似Unix的操作系統中鍵入“ dir”(Windows)或“ ls”,則應該看到目錄名稱“ myPack”。
然后輸入java myPack.PasswordVerification
package myPack;
public class PasswordVerification{
public boolean verify(String usrId, String pass){
if("pranjut".equals(usrId) && "password".equals(pass)){
return true;
}
return false;
}
public static void main(String[] main){
PasswordVerification vp=new PasswordVerification();
System.out.println(vp.verify("pranjut","password"));
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.