IntelliJ 工件 JAR 文件:找不到或无法加载主类

Lev*_*nte 6 java intellij-idea executable-jar

我在 IntelliJ 中创建了一个 JAR 工件,并带有将 JAR 文件提取到目标 JAR 的选项。看起来像这样:

在此处输入图片说明

我正确填写了清单信息:

在此处输入图片说明

我用 ZIP 检查了 JAR 文件的内容,它包含 jar 文件、正确填充的 MANIFEST.MF 和我的项目的 .class 文件。

但是如果我尝试运行它,它会抛出一个错误:

d:\Own_Tools\REF_Standalone\build>java -jar REF_Standalone.jar
Error: Could not find or load main class com.continental.ref.REFController
Run Code Online (Sandbox Code Playgroud)

我很确定它包含 com\continental\ref\REFController.class。

你知道它出了什么问题吗?

感谢:莱文特

Cra*_*der 2

apache-commons.jar已进行数字签名(您可以通过目录中的FILETEST.DSA和来判断)。FILETEST.SFMETA-INF

打包工件 jar 时,这些文件将复制到新 jar 中,但它们不包含新 jar 中其他类的签名。

这会破坏 jar 签名,出于安全原因,JVM 不允许执行该 jar。

请参阅我的另一个答案以了解解决方法(只需删除文件*.SF并重建工件)。*.DSAapache-commons.jar