Java 无法执行jar

Java 无法执行jar,第1张

Java 无法执行jar

首先,看到你跑步

java -jar "app"
而不是跑步有点奇怪
java -jar app.jar

其次,要使

jar
可执行文件,你需要将一个名为
meta-INF / MANIFEST.MF
的文件打包

文件本身应该(至少)具有此衬纸

Main-Class: com.mypackage.MyClass

com.mypackage.MyClass
该类在哪里保存公共静态void main(String [] args)入口点。

请注意,使用

CLI,Maven,Ant
或Gradle有几种方法可以完成此 *** 作:

对于CLI,将执行以下命令:

(tks @ dvvrt)

jar cmvf meta-INF/MANIFEST.MF <new-jar-filename>.jar  <files to include>

对于Maven来说,下面的代码片段应该可以解决问题。请注意,这只是插件定义,而不是完整的pom.xml:

<build>  <plugins>    <plugin>      <!-- Build an executable JAR -->      <groupId>org.apache.maven.plugins</groupId>      <artifactId>maven-jar-plugin</artifactId>      <version>3.1.0</version>      <configuration>        <archive>          <manifest> <addClasspath>true</addClasspath> <classpathPrefix>lib/</classpathPrefix> <mainClass>com.mypackage.MyClass</mainClass>          </manifest>        </archive>      </configuration>    </plugin>  </plugins></build>

(选择一个

<version>
适合你的项目的对象。)

对于Ant,以下代码片段应有所帮助:

<jar destfile="build/main/checksites.jar">  <fileset dir="build/main/classes"/>  <zipfileset includes="**/*.class" src="lib/main/some.jar"/>  <manifest>    <attribute name="Main-Class" value="com.acme.checksites.Main"/>  </manifest></jar>

积分Michael Niemand-

对于Gradle:

plugins {    id 'java'}jar {    manifest {        attributes(     'Main-Class': 'com.mypackage.MyClass'        )    }}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/4932906.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-13
下一篇 2022-11-12

发表评论

登录后才能评论

评论列表(0条)

保存