首页 > 解决方案 > 从 cmd 运行时遇到 java.lang.NoClassDefFoundError(错误名称:)问题

问题描述

我是 Java 新手,正如标题所说,我正在努力从 cmd 运行我的测试程序(它基本上只是一个 hello world 程序),我正在使用目录myfolder\eclipse\learning\src\learning来存储我的项目类/.java 文件. 我得到错误

Caused by: java.lang.NoClassDefFoundError: learning/Test (wrong name: Test)

我不知道为什么,我已经完成了“javac Test.java”,这很好,但是每当我尝试“java Test”时,我都会收到那个错误。我也尝试过“java Test.class”,但这只是给了我错误

Caused by: java.lang.ClassNotFoundException: Test.class

该类在 Eclipse 中也运行良好。我已经用谷歌搜索了很多次这个问题,但没有找到解决方案,但我可能只是以某种方式错误地使用了这些解决方案。

感谢您的时间。

标签: java

解决方案


编译如下:

myfolder\eclipse\learning\src\learning\>javac -d . Test.java

运行如下:

myfolder\eclipse\learning\src\learning\>java learning.Test

笔记:

  1. -d指定放置生成的类文件的位置。
  2. .代表当前目录

请注意,如果您使用的是 Java 11,java Test.java即使不编译也可以直接运行它。检查以了解更多信息。


推荐阅读