"找不到主要课程:XX.计划将退出."

13 java program-entry-point

我已经设法用命令提示符运行我的jar文件,但它总是给我一个响应

找不到主要类:XX.程序将会退出.

请帮帮我,谢谢.

Von*_*onC 19

请参阅设置应用程序的入口点

如果您有一个捆绑在JAR文件中的应用程序,则需要某种方法来指示JAR文件中的哪个类是应用程序的入口点.您使用清单中的Main-Class标头提供此信息,该标头具有以下一般形式:

Main-Class: classname
Run Code Online (Sandbox Code Playgroud)

值classname是作为应用程序入口点的类的名称.

回想一下,入口点是一个具有签名方法的类

 public static void main(String[] args).
Run Code Online (Sandbox Code Playgroud)

在清单中设置Main-Class标头后,然后使用以下形式的java命令运行JAR文件:

java -jar JAR-name
Run Code Online (Sandbox Code Playgroud)

执行Main-Class标头中指定的类的主要方法.


我们首先创建一个名为Manifest.txt的文本文件,其中包含以下内容:

Main-Class: MyPackage.MyClass
Run Code Online (Sandbox Code Playgroud)

警告:文本文件必须以新行或回车结束.如果最后一行没有以新行或回车结束,则不会正确解析.

然后,我们通过输入以下命令创建名为MyJar.jar的JAR文件:

jar cfm MyJar.jar Manifest.txt MyPackage/*.class
Run Code Online (Sandbox Code Playgroud)

这将创建一个带有以下内容的清单的JAR文件:

Manifest-Version: 1.0
Created-By: 1.6.0 (Sun Microsystems Inc.)
Main-Class: MyPackage.MyClass
Run Code Online (Sandbox Code Playgroud)

使用以下命令运行JAR文件时,MyClass的main方法将执行:

java -jar MyJar.jar
Run Code Online (Sandbox Code Playgroud)