0

试图创建一个 Windows 可执行文件,但总是在Exception in thread main java.lang.NoClassDefFoundError. 我已经阅读了所有其他回复,但到目前为止我的问题仍然是一样的。我有一个名为 testproject 的类文件,它的主要过程是 public static void。我的类文件在名为 testproject 的文件顶部还有一个包指示符。我的类文件成功编译成一个名为 testproject.class 的文件。

下面的命令有效,但是当我运行时testproject.jar,出现上述错误:

 jar cvfm testproject.jar c:\temp\manifest.txt *.class

manifest.txt 的内容:

 Main-Class: testproject.testproject

我尝试了许多主类的组合

4

3 回答 3

0

请添加您在java文件中编写的代码。否则无法跟踪。

于 2012-09-04T19:21:21.550 回答
0

似乎 jvm 无法找到 Main 类的类文件。可能的根本原因可能是

  1. 文件没有在正确的位置生成,尝试提取 jar 文件并查看类是否在正确的包文件夹中
  2. 清单文件或 jvm 命令行类路径或清单文件不包含类文件路径的条目
  3. 尝试使用 IDE 生成 JAR 文件,这通常会有所帮助
于 2012-09-04T19:31:27.783 回答
0

似乎您正在从包“testproject”执行命令“jar”: jar -cvfm testproject.jar c:\temp\manifest.txt *.class

尝试从父文件夹执行它: jar -cvfm testproject.jar c:\temp\manifest.txt testproject/* .class

类文件将被放入“testproject”包中。

顺便说一句,请确保您的清单文件末尾有一个新的空行。

于 2012-09-04T20:32:56.220 回答