bulid fat jar 打包的常见问题
最近用插件build fat jar 打包遇到的问题:
问题1:不管在打包界面怎么操作然后运行都是报
问题2:打完jar包提供给第三方 别人引用不到里面具体的类,相当于new出来导不了相应的jar包
问题3: 用不同的执行命令会用问题:
- java -jar XXX.jar
- java -cp XXX.jar 类的全限定名
解决心路历程如下:
问题1:这个问题是因为写完代码过后一定要记得编译,不编译你会发现不管怎么弄都是无济于事的。然后在那凌乱,怀疑人生。编译简单设置 project -> Bulid Automatically 设置完了,编译完成,然后按照正常的打包流程走就ok,瞬间豁然开朗,想向上天再借五百年。
问题2 和 问题3 其实都是卡在上图的毒瘤部分,打完包引用不到是因为One-JAR 勾选了,java -cp xxx.jar 权限定名.类名 执行报找不到主类,还是因为勾选了 One-JAR,不错是它是它就是它。
总结:无脑操作就是
编译:
打包:不要勾选One-JAR
执行:用 java -jar xxx.jar
java -cp xxx.jar 全限定名(入口比较多可以通过全限定名指定入口)