1 背景
最近需要导出可执型jar文件,平时自己使用的IDE就是idea,所有不想再切回eclipse进行打包操作。同时该项目,使用到了maven,那么首先想到使用maven打包插件,打出能直接执行的jar包。但是试了很多种方法依然无效,这里也可能自己没有找到解决办法,最后看着这篇文章使用Intellij Idea打包java为可执行jar包,成功打出了可执型jar包。原文有操作,但是这里也记录下自己的操作,比较啰嗦。
2 流程
总流程:File -> Project Structure -> Artifacts -> + -> Jar -> From modules with dependencies -> Selected Main Class after browsing -> selected extract to the target jar -> Directory for META-INF -> OK -> Apply -> OK -> Build -> Build Artifacts -> Build Artifact -> Build
-
File -> Project Structure,如图
- Artifacts -> + -> Jar -> From modules with dependencies,如图:
Jar -> From modules with dependencies -> Selected Main Class after browsing -> selected extract to the target jar -> Directory for META-INF automatically gets populated,如图:
注意:图中框出来的部分,需要进行修改,不能使用默认生成的,这个目录要设置成项目根目录的上一级。如:图中的E:\myTestProject\testHadop\src\main\java需要修改为E:\myTestProject,原因是如果不这样修改,打成的jar包里没有包含META-INF/MAINFEST.MF文件 - OK之后,如图:
注意,这里必须出现图中标注的部分,这个就是上一步修改了Directory for META-INF后才能出现的,否则不会有的 -
Apply -> OK -> Build -> Build Artifacts,如图:
-
Build Artifact -> Build,如图:
执行下来之后就可以到当前路径的out目录下找已打的jar文件了,至此大工告成。