参考博客:https://www.cnblogs.com/mask-xiexie/p/16086612.html
https://zhuanlan.zhihu.com/p/587605618
1、在resources目录下新建lib文件夹,将jar包放到lib文件夹中
2、修改pom.xml文件
<dependency><groupId>com.lanren312</groupId><artifactId>lanren312</artifactId><scope>system</scope><version>1.0</version><systemPath>${project.basedir}/src/main/resources/lib/javatest.jar</systemPath>
</dependency>
备注:
groupId、artifactId、version这三个随便写
scope=system表示此依赖是来自外部jar,而不是maven仓库。当scope设置为system时,systemPath属性才会生效,systemPath为一个物理文件路径,来指定依赖的jar其物理磁盘的位置。
${project.basedir}固定写法
现在运行项目没有问题,但是打包就会发现jar包下 \BOOT-INF\lib\ 目录下没有我们刚刚添加的包,看下面的步骤
3、打jar、war包
packaging、build对应改下
<packaging>jar</packaging>
<!-- <packaging>war</packaging>-->
<build><finalName>heroes</finalName><resources><resource><directory>lib</directory><targetPath>/lib/</targetPath><includes><include>${project.basedir}/src/main/resources/lib/</include></includes></resource><resource><directory>src/main/resources</directory><includes><include>**/*</include></includes></resource></resources><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><excludes><exclude><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId></exclude></excludes></configuration></plugin><!-- 定义war包插件 -->
<!-- <plugin>-->
<!-- <groupId>org.apache.maven.plugins</groupId>-->
<!-- <artifactId>maven-war-plugin</artifactId>-->
<!-- <configuration>-->
<!-- <webResources>-->
<!-- <resource>-->
<!-- <directory>src/main/resources/lib</directory>-->
<!-- <targetPath>WEB-INF/lib/</targetPath>-->
<!-- <includes>-->
<!-- <include>**/*.jar</include>-->
<!-- </includes>-->
<!-- </resource>-->
<!-- </webResources>-->
<!-- </configuration>-->
<!-- </plugin>--><!-- 定义jar包插件 --><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-plugin</artifactId><configuration><includeSystemScope>true</includeSystemScope></configuration></plugin></plugins>
</build>
打jar包,在 \BOOT-INF\lib\ 就会看到 lanren312-1.0.jar
打war包,在 \WEB-INF\lib\ 就会看到 javatest.jar
4、 添加web.xml
参考博客 :https://blank.blog.csdn.net/article/details/85337396
要想把web.xml打入jar包,需要再resources加入下面的配置
<resources><resource><!-- directory 表示取该目录下的文件 --><directory>libs</directory><!--targetPath 指定打包到哪个目录下 默认是放到class目录下--><targetPath>/BOOT-INF/lib/</targetPath><!-- 取符合格式的所有文件 *代表全部 --><includes><include>**/*.jar</include></includes></resource>
</resources>