打包jar
打包jar
jar包本质上是将所有class文件、资源文件压缩打成一个包(也可以选择不压缩),可选择在jar包中生成META-INF/MANIFEST.MF文件,MANIFEST.MF是清单文件,里面可以记录主类、classpath等信息,供虚拟机使用。
使用idea的打包工具

添加main-class



运行jar
java -jar main-class.jar

使用maven打包

里面并没有main-class ;
解决方式:
1、手动添加
打开jar包,在META-INF文件夹下找到MANIFEST.MF文件,添加
Main-Class: main函数所在类名,如Main-Class: Test
然后再打包成jar ;
2、使用maven-shade-plugin
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.2.4</version>
<configuration>
<!-- 此处按需编写更具体的配置 -->
</configuration>
<executions>
<execution>
<!-- 和 package 阶段绑定 -->
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<manifestEntries>
<Main-Class>org.xian.App</Main-Class>
</manifestEntries>
</transformer>
</transformers>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>


浙公网安备 33010602011771号