如何在不使用IDE的情况下解决java中的NoClassDefFoundError
当我试图用一个包名编译一个简单的java程序时,它向我显示NoClassDefFoundError。当我删除它时,我的程序执行良好。我不想使用IDE,那么如何解决这个问题呢如何在不使用IDE的情况下解决java中的NoClassDefFoundError,java,packages,noclassdeffounderror,Java,Packages,Noclassdeffounderror,当我试图用一个包名编译一个简单的java程序时,它向我显示NoClassDefFoundError。当我删除它时,我的程序执行良好。我不想使用IDE,那么如何解决这个问题呢 package com.example.satya; public class Overloading{ int telugu,english,hindi,maths,science,social,languages,non_languages; public int total(int sub1, int sub2,
package com.example.satya;
public class Overloading{
int telugu,english,hindi,maths,science,social,languages,non_languages;
public int total(int sub1, int sub2, int sub3){
int total = sub1+sub2+sub3;
return total;
}
public int total(int languages, int non_languages){
int total = languages+non_languages;
return total;
}
public static void main(String[] args) {
Overloading testOverloading = new Overloading();
int languages = testOverloading.total(25,30,35);
int non_languages = testOverloading.total(45,50,28);
testOverloading.total(languages,non_languages);
System.out.println(languages+non_languages);
}
}我通过制作可执行jar文件来测试您的代码。
我没有使用IDE。我使用“Atom”文本编辑器 首先,您需要创建文件夹结构 根/bin=存储jar文件的位置。
根/类=存储类文件的位置。
root/src/com/example/satya=存储源代码的位置 创建清单文件
root/classes/manifest.txt
Manifest-Version: 1.0
Sealed: true
Main-Class: com.example.satya.Overloading
Class-Path: .
在终端:
root#
javac -classpath classes:. -d classes src/com/example/satya/Overloading.java
root/classes#
jar -cvmf manifest.txt ../bin/Overloading.jar com/example/satya
root/bin#
java -jar Overloading.jar
您是否已将java文件放在与包对应的文件夹中name@Ramanifc我已经把它们放好了。编译很好,但不能执行。这个奇怪的愚蠢的标记让我无法区分纯文本和代码。谁是笨蛋?很高兴浏览其他问题,看看这是可能的。@Yegunkim希望现在更好