需求:项目A打成jar包,项目B引入项目A打成的jar包,其中项目A包含第三方jar包,项目A包含资源文件
一:解决jar资源路径问题
上图是项目A的项目结构,CheckPwdComplexity.java 需要引用 englishAndPinyin.txt 资源文件。
项目A作为一个普通项目的时候:
String path = getClass().getResource("").getPath()+"/englishAndPinyin.txt";
就可以获得资源路径。
打成JAR包路径写法:
InputStream in=this.getClass().getResourceAsStream("/password/englishAndPinyin.txt");
上面代码直接获得InputStream 。
二:解决包含第三方jar包问题
网上各种用eclipse 打成jar包都是失败,后来找到
解决方法
上述博客中第一种方法失败,使用第二种方法 用eclipse插件Fat jar打包jar
1.安装fat jar插件
插件地址:http://kurucz-grafika.de/fatjar
之后一路next,安装完弹出错误,需要先安装另外的插件,如下:
如上图,Work with 中输入 The Eclipse Project Updates - http://download.eclipse.org/eclipse/updates/4.4 ,点击右边向下的箭头,勾选-》next
注:4.4是我的eclipse版本
安装完后再安装Fat jar即可,安装完fat jar 需要重启。
2.使用fat jar打包
右键点击项目名称,点击build fat jar
我这里不需要main入口方法
点击finish就打包成功