Java jar文件加载错误错误:无法找到或加载主类Something.class.原因是:Java.lang.Clas


Main类不在jar文件中时运行。它不是任何包装的一部分。当我尝试制作一个jar文件来封装它和所有支持该文件的库时,使用:
jar -cvf Something.jar src*.class 

然后尝试使用运行

java -jar Something.jar

尽管详细的消息显示"added manifest",但我还是得到了以下信息。

no main manifest attribute, in Something.jar.

如果我查看它创建的清单,我会得到:

Manifest-Version: 1.0
Created-By: 13.0.1 (AdoptOpenJDK) 

但没有Main Class:Something.Class语句。

如果我添加jar文件的入口点:

jar -cvef srcSomething.class Something.jar src*.class

我得到以下错误:

Error: Could not find or load main class srcSomething.class
Caused by: java.lang.ClassNotFoundException: srcSomething.class

我使用得到相同的结果

jar -cvef Something.class Something.jar src*.class

我看到入口点已经添加,因为jar文件的扩展在MANIFEST.MF 中显示了以下内容

Manifest-Version: 1.0
Created-By: 13.0.1 (AdoptOpenJDK)
Main-Class: Something.class

以下是整个项目的开始类。

public class Something {

public static void main(String[] args) {
IDiffPresenter presenter = new DiffPresenter();
}
}

我该怎么解决这个问题?

答案最初被忽略了。

CCD_ 1是关键成分。

javac Something.java
jar -cvef Something Something.jar  *.class
java -jar Something.jar

感谢用户16320675的回答。我所能做的就是支持你的评论。

相关内容

最新更新