Spring boot Maven 打包引入本地的jar包

时间:2021-01-08 09:06:47

公司交给我一个任务,把我们公司的项目,使用Maven打包成war包,部署到服务器下。我们项目引入了多个本地ar包,在部署的时候,发现本地的jar包没有引进来。经过研究解决!先记录如下

1、在pom.xml 引入外部的jar包

<dependency>
<groupId>taobao</groupId>
<artifactId>taobao</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>
${basedir}/lib/taobao.jar
</systemPath>
</dependency>

其中${basedir}代表项目根目录,这样就可以引入外部的jar包
其中 groupId,artifactId ,version 可以随意的命名,不过要通俗易懂

Spring boot Maven 打包引入本地的jar包

2 Maven 打包
打包命令
mvn package

因为maven 会执行测试文件,如果错误,则会打包失败,想要跳过测试文件,在后面加入
mvn package -DMaven.test.skip=true

重点来了

在pom.xml 我们项目有多个部署环境,默认是dev
其中Springboot 是通过 org.apache.maven.plugins 进行打包
所以要在这里

<profile>
<id>dev</id>
<activeByDefault>true</activeByDefault>
<dependencies>
<dependency>xxxx</dependency>
</dependencies>
<profile>
<build>
<!--在org.apache.maven.plugins 添加<resource>
添加外部的jar包所在的路径,就可以在打包的时候添加进去外部jar包了
</resource>-->

<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<webResources>
<resource>
<directory>lib</directory>
<targetPath>WEB-INF/lib/</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</buidl>

当打包成war包的时候,
可以通过 java -jar xxxx.war 运行项目