IntelliJ IDEA或maven打包含main的jar包方法步骤
程序员文章站
2022-07-10 19:25:06
照下面的方法执行,不会出现找不到主清单错误。IntelliJ IDEAFile - Project Structure - Artifacts.+ - JAR - From modules with dependencies设置 Main Class,选择主类。设置 Directory for META_INF/MANIFEST.MF,选择到 src/main/java 目录,不要再往下选择。回到主界面, Build - Build Artifact - Build此时在项目根目录的...
照下面的方法执行,不会出现找不到主清单错误。
IntelliJ IDEA
- File - Project Structure - Artifacts.
-
+ - JAR - From modules with dependencies
- 设置 Main Class,选择主类。
-
设置 Directory for META_INF/MANIFEST.MF,选择到 src/main/java 目录,不要再往下选择。
- 回到主界面, Build - Build Artifact - Build
- 此时在项目根目录的 out 文件夹一直向下找就会有打包好的 jar 包。
-
使用
java -jar <name.jar>
即可执行。
Maven
-
在 pom.xml 中
</project>
上方加入以下内容<build> <!-- <finalName>App</finalName>--> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <version>3.0.0</version> <executions> <execution> <phase>package</phase> <goals> <goal>shade</goal> </goals> <configuration> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>main.Main</mainClass> </transformer> </transformers> </configuration> </execution> </executions> </plugin> </plugins> </build>
其中 mainClass 项设置为你的项目入口。
-
intellij 右侧找到 Maven,Maven - Lifecycle - package(推荐先 clean 一次);或者直接在项目根目录执行 mvn clean package。
-
项目根目录的 target 文件夹里会生成 xxx.jar 与 original-xxx.jar,xxx 是你的项目名和版本号。
java -jar xxx.jar
即可运行。 -
可以在 pom.xml 中添加 finalName 项,这样上面的 xxx 就会换成这一项的值。
注:mvn package 和 mvn install 都会将项目生成 jar 包,区别是是否部署到本地仓库。
本文地址:https://blog.csdn.net/m0_37809890/article/details/108036190