【问题标题】:JAR file - no main manifest attributeJAR 文件 - 没有主要清单属性
【发布时间】:2018-02-10 23:00:32
【问题描述】:

我知道有很多这样的主题,但我的问题没有找到答案。 我在项目结构中的 IntelliJ 中创建了 JAR 文件并构建了工件。在 Java 文件夹中,我有包 META-INF 和 MANIFEST.MF:

Manifest-Version: 1.0
Main-Class: com.przemyslawostrouch.hellowworldspring.Hellowworldspring
 Application

但是当我想在 cmd 行中执行 JAR 文件(java -jar HelloWorldSpringTutorial.jar)时,我收到了以下信息: 没有主要清单属性,在 HelloWorldSpringTutorial.jar 中。

那么我应该手动将它添加到 IntelliJ 中的 JAR 中吗?

编辑: CrazyCoder 给出了一个很好的说明,即 META-INF 应该在 resource 文件夹中,但我的 IntelliJ 默认设置在一开始就在 src->main-> java 文件夹中创建了它。将目录更改为资源后,一切正常。

【问题讨论】:

  • 参见stackoverflow.com/a/42200519/104891 获取示例项目并将它们与您的项目进行比较。确保MANIFEST.MF 确实放置在罐子内的正确位置。您可能需要将其保存在资源目录中,而不是源目录中,否则您的 artifact configuration 不正确。
  • 我已经在互联网上寻找您的 EDIT 3 天了!谢谢!这完全解决了我的问题,您应该创建一个答案并将其标记为正确答案,而不是在您的问题中进行编辑,干杯!

标签: java maven intellij-idea jar


【解决方案1】:

我现在不使用 IntelliJ,但如果您使用 Eclipse 创建 Jar,则清单文件由 Eclipse 自动创建,因此我希望项目本身中的清单文件很可能会被忽略。如果可以指定主类,请检查在 IntelliJ 中创建 jar 时可用的设置。

谷歌搜索后,我想出了一个help page,似乎证实了上述理论。

【讨论】:

  • 我创建了一个 JAR 文件,MANIFEST 自动创建但我在 cmd btw 中收到了这种错误
猜你喜欢
  • 2020-07-28
  • 2021-05-29
  • 2015-10-01
  • 2022-12-23
  • 2021-11-02
相关资源
最近更新 更多