【问题标题】:trying to run a .jar file in command prompt尝试在命令提示符下运行 .jar 文件
【发布时间】:2012-03-22 12:26:06
【问题描述】:

我正在尝试使用命令提示符 (Windows XP) 运行 jar 文件,但出现 NoClassDefFoundError。

我的 DateAndTime.class 文件位于名为 dateandtime 的文件夹中,并且还在源文件中指出了一个名为 dateandtime 的包。

在文件夹之外我有一个带有规范的 manifest.mf 文件

主类:dateandtime.DateAndTime

我把这个放在命令文件里

jar cmf manifest.mf myJarFile.jar 日期和时间

这会在 manifest.mf 所在的文件夹中创建 myJarFile.jar。

当我尝试运行这个 jar 文件时,我得到了 NoClassDefFoundError

java -jar myJarFile.jar

如果我将所有类放在同一目录中但没有指定包,则 .jar 文件运行良好,但一旦我尝试指定包,即使创建了 myJarFile.jar,我也会收到错误消息。

这是为什么呢?

问候

【问题讨论】:

  • NoClassDefFoundError 表示找不到哪个类?发布jar tf myJarFile.jar 的输出,它将显示您的 jar 的内容。

标签: java jar command-prompt


【解决方案1】:

如果您收到NoClassDefFoundError,则表示在您的类编译期间存在的类在执行期间不存在。这意味着您的 JAR 文件不包含您的类运行所需的所有依赖项。由于您的问题缺乏项目结构的详细信息,我只能建议您重新访问应用程序的依赖关系树并确定 所有 需要包含在 JAR 中的类。 p>

【讨论】:

  • 我很抱歉。我在包声明方面犯了一个错误。
【解决方案2】:

语法: java -jar 文件名.jar

示例: java -jar myfile.jar

【讨论】:

    猜你喜欢
    • 2011-08-12
    • 2015-03-28
    • 1970-01-01
    • 2021-02-16
    • 2019-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-11-17
    相关资源
    最近更新 更多