使用pom文件scope的system属性
比如要引入淘宝的sdk: taobao-sdk-java.jar
- 这里在project的根目录新建lib文件夹,将jar放进去
pom.xml中引入
注意:<dependency><groupId>dingding</groupId><artifactId>dingding</artifactId><version>2.8</version><scope>system</scope><systemPath>${project.basedir}/lib/taobao-sdk-java.jar</systemPath></dependency>
- groupId:自定义
- artifactId:自定义
- version:自定义
- scope:必须是system
- systemPath:jar包的路径(idea编写的时候会有提示的)
- 通过上述方式,在开发环境没有什么问题,不会存在什么包找不到等情况但是,maven project部署一般打包发布,所以打包是需要额外配置的
- 处理打包
打包的时候需要做如下配置,需要通过resource标签引入,位置build→resources→resource
<build><resources><resource><directory>lib</directory><targetPath>/BOOT-INF/lib/</targetPath><includes><include>**/*.jar</include></includes></resource></resources></build>
- directory:指定lib文件夹的位置,由于是相对工程根目录,所以直接写上lib即可
- targetPath:打包到的文件夹位置,写上BOOT-INF/lib即可,或者是WEB-INF/lib。【斜杠(/)加不加都行,如果是mac的话写./】
- includes:一般都是以jar结尾,就写*/.jar
较为完整的pom.xml
<dependency><groupId>dingding</groupId><artifactId>dingding</artifactId><version>2.8</version><scope>system</scope><systemPath>${project.basedir}/lib/taobao-sdk-java-auto_1479188381469-20190628.jar</systemPath></dependency><build><resources><resource><directory>lib</directory><targetPath>/BOOT-INF/lib/</targetPath><includes><include>**/*.jar</include></includes></resource></resources></build>
- SpringBoot打包时引入本地的jar,SpringBoot的插件有个简单的方式
<plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><!--引入本地jar--><configuration><includeSystemScope>true</includeSystemScope></configuration></plugin></plugins>
