SpringBoot
项目引入外部jar包
首先要下载所需jar包到本地,然后复制下载好的jar到项目中
然后修改项目的pom文件,将项目里的jar包引入到maven
<dependency>
<groupId>slf4j.api</groupId>
<artifactId>slf4japi</artifactId>
<version>2.0</version>
<scope>system</scope>
<systemPath>${project.basedir}\src\main\resources\lib\slf4j-api-1.7.25.jar</systemPath>
</dependency>
需要注意的是,version一定要填写不然会报错
Jar执行解决方案:
将jar引入好之后,要将includeSystemScope参数设置为true不然打包时会报错
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<includeSystemScope>true</includeSystemScope><!--当scope为system时增加配置-->
</configuration>
</plugin>
War执行解决方案:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webResources>
<resource>
<directory>${project.basedir}/src/main/resources/lib</directory>
<targetPath>WEB-INF/lib/</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
directory: lib包所在路径
targetPath:编译后lib包中jar位置
原因:在项目中引入本地包在打包的时候会把本地引入的jar打包到lib-provided文件夹中,但tomcat只扫描lib中的jar所以在请求接口时会发生NoClassDefFoundError错误,所以要在编译时指定本地jar问价的位置
将本地项目中新增的jar包,上传到git
需要修改项目中.gitignore文件,删除*.lib与*.jar
删除文件中*.lib与*.jar之后即可上传jar到git,不然会把lib文件夹与jar包过滤掉
版权声明:本文为qrcln原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。