使用Intellij Idea打包java为可执行jar包

简介: 自己在实际工作中的需要,使用Idea打包项目为可执行的jar包,网上找了好多文章但总是不成功,多次尝试后终于跑通,所以记录下来,希望可以帮助各位步骤:1. 选中Java项目工程名称,在菜单中选择 File->project structure... (快捷键Ctrl+Alt+Shift+S)。

自己在实际工作中的需要,使用Idea打包项目为可执行的jar包,网上找了好多文章但总是不成功,多次尝试后终于跑通,所以记录下来,希望可以帮助各位

步骤:
1. 选中Java项目工程名称,在菜单中选择 File->project structure... (快捷键Ctrl+Alt+Shift+S)。

2. 在弹出的窗口中左侧选中"Artifacts",点击"+"选择jar,然后选择"from modules with dependencies"。

3. 在配置窗口中配置"Main Class"。

4.配置“Directory for META-INF/MAINFEST.MF”,此项配置的缺省值是:D:\Intellij\SeriesPublish\src\main\java,需要改成:D:\Intellij。如果不这样修改,打成的jar包里没有包含META-INF/MAINFEST.MF文件,这个应该是个IDEA的BUG(参考http://stackoverflow.com/questions/15724091/how-to-run-a-jar-file-created-using-intellij-12,配置完成后如下图所示,点击OK进入下一步。我个人建议选择“extract to the target JAR”,这样所有依赖的jar包都会放在生成的jar包中。

5. 完成后,点击OK,Apply等按钮,回到IDEA的主菜单,选择“Build - Build Artifacts”下的“Build”或者“Rebuild”即可生成最终的可运行的jar,在D:\Intellij\SeriesPublish\out\artifacts\SeriesPublish_jar下面找到生成的目标jar,可以看到META-INF/MAINFEST.MF文件被正确包含,内容也正确。


相关文章
|
10天前
|
Java 开发工具 Maven
IntelliJ IDEA安装教程(超详细)
IntelliJ IDEA安装教程(超详细)
57 1
|
16天前
|
XML IDE 开发工具
别看你风吹头顶凉但你绝对没有过这样方便的插件Intellij IDEA 自带的 Vim
别看你风吹头顶凉但你绝对没有过这样方便的插件Intellij IDEA 自带的 Vim
36 0
|
1月前
|
前端开发 关系型数据库 MySQL
IDEA集成Docker插件打包服务镜像与运行【附Docker命令汇总】
IDEA集成Docker插件打包服务镜像与运行【附Docker命令汇总】
|
2天前
|
Web App开发 Java 应用服务中间件
【Java Web】在 IDEA 中部署 Tomcat
【Java Web】在 IDEA 中部署 Tomcat
8 0
|
5天前
|
JSON Kubernetes Go
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
15 0
无缝集成:在IntelliJ IDEA中利用Kubernetes插件轻松管理容器化应用
|
5天前
|
安全
IntelliJ IDEA 快捷键大全(三)
IntelliJ IDEA 快捷键大全
53 0
IntelliJ IDEA 快捷键大全(三)
|
16天前
|
Java
java中jar启动设置内存大小java -jar 设置堆栈内存大小
java中jar启动设置内存大小java -jar 设置堆栈内存大小
11 1
|
28天前
|
Java 开发工具 数据库
IntelliJ IDEA 面试题及答案整理,最新面试题
IntelliJ IDEA 面试题及答案整理,最新面试题
60 0
|
1月前
|
Oracle Java 关系型数据库
【问题】Cause: java.sql.SQLException: 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK
【问题】Cause: java.sql.SQLException: 不支持的字符集 (在类路径中添加 orai18n.jar): ZHS16GBK
|
1月前
|
前端开发 Linux 开发工具
选择文本编辑器:为什么我钟爱IntelliJ IDEA
选择文本编辑器:为什么我钟爱IntelliJ IDEA
24 0