gpt4 book ai didi

java - 即使 .class 文件存在,也会出现 java.lang.NoClassDefFoundError 错误

转载 作者:行者123 更新时间:2023-12-02 03:19:56 25 4
gpt4 key购买 nike

这是我的文件结构:

T1 -> T1sample -> src -> t1sample -> T1.java
T1 -> T1sample -> src -> t1sample -> T1.class

我自己创建了这些文件夹和文件(除了 T1.class,我是通过从 shell 运行“javac T1.java”获得的)。

这是 T1.java:

package t1sample;

public class T1 {
public static void main(String []args) {
System.out.println('Test');
}
}

现在当我尝试运行 java T1 时它返回一个错误:

java.lang.NoClassDefFoundError:  T1 (wrong name: t1sample/T1)

知道为什么吗?

最佳答案

只是为了澄清您获得 NoClassDefFoundError 的原因是因为您将 t1sample 声明为。因此,T1 必须从 src 目录运行,而不是从 t1sample 运行。

首先创建目录结构...(使用gvim作为编辑器)

~/Desktop $ mkdir -p T1sample/src/t1sample && cd T1sample/src/t1sample && gvim T1.java

创建源...

package t1sample;

public class T1 {

public static void main(String... args) {
System.out.println("Test");
}
}

编译...

~/Desktop $  cd T1sample/src/t1sample/
~/Desktop/T1sample/src/t1sample $ javac T1.java

确认...

~/Desktop/T1sample/src/t1sample $  ls -la
total 2
-rw-r--r-- 1 Edward None 411 Sep 28 21:46 T1.class
-rw-r--r-- 1 Edward None 137 Sep 28 21:45 T1.java

从 src 目录运行它...

~/Desktop/T1sample/src/t1sample $  cd ..
~/Desktop/T1sample/src $ java t1sample.T1
Test

关于java - 即使 .class 文件存在,也会出现 java.lang.NoClassDefFoundError 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39760022/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com