【问题标题】:Jar works on double-click, but not in command linejar可以双击,但不能在命令行中
【发布时间】:2012-05-30 18:50:17
【问题描述】:

another post 中跟进我的一个问题。

我将maven-assembly-plugin 添加到我的POM,现在jar 可以工作,但前提是我双击文件系统中的jar。如果我尝试从命令行运行 jar,我仍然会收到此错误:

Exception in thread "main" java.lang.NoClassDefFoundError:

这让我很担心,因为这个 jar 似乎不是独立于平台的。我该如何解决这个问题?

【问题讨论】:

  • 你能从你的 jar 中提供文件 META-INF/MANIFEST.MF 的内容吗
  • 当 jar 双击启动时,清单应该在那里。

标签: java maven executable-jar


【解决方案1】:

在 cmd 行从 jar 启动应用程序的语法

  java -jar jarname

鉴于您有 Manifest.txt 文件和 jar 具有 Main-Class:*package.class_name_containing_main_method*

【讨论】:

  • 我错过了 -jar 开关。谢谢大家!
【解决方案2】:

如何启动它?

您需要使用-jar 开关:

java -jar your_jarfile.jar

【讨论】:

    【解决方案3】:

    这不应该发生,因为通过命令行启动它与通过双击启动完全相同。也许您正试图让它通过命令行使用不同版本的 java,而这不起作用?澄清一下,启动 jar 的命令是java -jar name.jar

    【讨论】:

      猜你喜欢
      • 2011-11-11
      • 1970-01-01
      • 1970-01-01
      • 2017-05-31
      • 2017-01-01
      • 2017-02-05
      • 2014-09-24
      • 2018-12-18
      • 1970-01-01
      相关资源
      最近更新 更多