前言
今天碰到一個(gè)需求津函,需要在項(xiàng)目中蛉幸,引入一個(gè)其他項(xiàng)目的SDK包破讨,這個(gè)包大概有幾十個(gè)類文件,如果全部復(fù)制進(jìn)入項(xiàng)目奕纫,需要修改的工作量很大提陶,所以考慮打成jar包并引入。
介紹
- 需要打包的項(xiàng)目匹层,以及需要引入的項(xiàng)目均為maven項(xiàng)目
- 工具使用Idea
打包jar
- 首先隙笆,如果需要打包成jar锌蓄,必須有一個(gè)Main入口類,如果項(xiàng)目沒有撑柔,記得建立一個(gè)瘸爽,里面只要包含main方法即可。
- 然后點(diǎn)擊項(xiàng)目铅忿,在上面菜單處選擇 File--Project Structure...
- 在左側(cè)選擇Artifacts剪决,然后點(diǎn)擊+
- Main Class 選擇 你寫的main類,然后點(diǎn)擊OK即可
- 如圖檀训,把勾勾打上柑潦,然后點(diǎn)擊OK
6.點(diǎn)擊菜單 Build --Build Project
然后在項(xiàng)目的根目錄 classes --artifacts 目錄即可找到生成的Jar包
引入 jar包
如果需要在另外一個(gè)項(xiàng)目中,引入這個(gè)jar包峻凫,那么渗鬼,需要如下操作
- 創(chuàng)建目錄
在項(xiàng)目的src平級(jí)目錄新建文件夾 lib (這一步名稱隨意) - 將剛才生成好的jar包放入該文件夾下。
3.將該文件引入項(xiàng)目
菜單處選擇 File--Project Structure...
然后 左側(cè)選擇Modules點(diǎn)擊 右側(cè)+蔚晨,如圖乍钻。
- 找到項(xiàng)目目錄下的jar包,導(dǎo)入
- 在pom中引入
注意這里的 directory要和剛才新建的文件目錄相同
<build>
<resources>
<resource>
<directory>lib</directory>
<targetPath>BOOT-INF/lib/</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<targetPath>BOOT-INF/classes/</targetPath>
</resource>
</resources>
</build>
以上方法會(huì)導(dǎo)致問題铭腕,最好用
<dependency>
<groupId>xxx</groupId>
<artifactId>xxx</artifactId>
<version>v0.1</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/xxx.jar</systemPath>
</dependency>
其中xx 隨意银择,為包名
6.結(jié)束
然后就可以在項(xiàng)目中使用引入的jar中的方法了。