运行jar时无法找到或加载主类

问题描述 投票:1回答:2

首先,我知道这个问题经常被问到。但我的问题不同,所以请耐心等待完整的描述。

我用intellij IDEA 2018.2来构建jar。我用2017年制作了罐子,它工作得很好。最近,我使用intellij来构建带有工件的jar。 enter image description here

设置似乎很好。它以前对我有用。但是我运行了构建的jar,它表示“主类无法运行或加载”。

jar文件似乎正常。但我发现META-INF是不同的。我有一些文件很奇怪:enter image description here

我发现除了MANIFEST.MF之外我是否删除了这些文件。它可以正常工作。我不确定设置的区别。

我尝试了以下方法:

  1. 尝试删除.idea文件夹,然后打开项目。
  2. 尝试删除工件并配置新工件。
  3. 尝试修改模块的输出路径。
  4. 重建项目或重建工件jar。

但是所有的方法都行不通。我试图在intellij的MAC OS和windows OS中使用相同的设置构建jar,但结果似乎相同。任何人都可以给我一些建议。先感谢您。

java intellij-idea
2个回答
1
投票

*,RSA, *.SF, *.DSA是jarfile签名时创建的文件。显然,您使用的jar是签名的,因此如果您提取内容并将它们放在新jar中,签名将无效,Java将不接受它们。因此,您应该删除签名,或者重新设置工件生成的整个jar。


0
投票

我发现什么是解决方案。我不应该将依赖项导入为文件夹。我必须通过选择所有jar文件而不是jar文件的文件夹来导入它们。

© www.soinside.com 2019 - 2024. All rights reserved.