maven打包不打lib目录里面的jar包解决办法

Posted shouwangyixin

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven打包不打lib目录里面的jar包解决办法相关的知识,希望对你有一定的参考价值。

起因:我们的项目原为一个在Tomcat中运行的war包,使用maven构建,依赖由maven管理,现在需要和第三方系统对接,使用第三方技术,第三方提供若干jar包,使用时直接把这些jar包放到lib目录,打包时发现报ClassNotFundException,找不到这些类

解决办法:
网络查找的方法:

若打成jar包,pom文件中添加:

 1 <build>
 2   <plugins>
 3       <plugin>
 4        <groupId>org.apache.maven.plugins</groupId>
 5        <artifactId>maven-compiler-plugin</artifactId>
 6        <version>3.6.0</version>
 7        <configuration>
 8          <source>1.8</source>
 9          <target>1.8</target>
10          <encoding>UTF-8</encoding>
11          <compilerArguments>
12            <extdirs>${project.basedir}/src/main/webapp/WEB-INF/lib</extdirs>
13          </compilerArguments>
14        </configuration>
15      </plugin>
16   </plugins>
17 </build>

若打成war包,pom文件中添加:

 1 <build>
 2    <plugins>
 3      <plugin>
 4        <groupId>org.apache.maven.plugins</groupId>
 5        <artifactId>maven-war-plugin</artifactId>
 6        <configuration>
 7          <webResources>
 8            <resource>
 9              <directory>${project.basedir}/src/main/resources/lib</directory>
10                 <targetPath>WEB-INF/lib/</targetPath>
11                 <includes>
12                   <include>**/*.jar</include>
13                 </includes>
14            </resource>
15          </webResources>
16        </configuration>
17      </plugin>
18    </plugins>
19 </build>

个人打成的是war包,解决方法是pom中加:

1 <build>
2     <resources>
3         <resource>
4             <directory>${project.basedir}/src/main/webapp/WEB-INF/lib</directory>
5             <targetPath>WEB-INF/lib/</targetPath>
6         <resource>
7     </resources>
8 </build>

 

以上是关于maven打包不打lib目录里面的jar包解决办法的主要内容,如果未能解决你的问题,请参考以下文章

Spring boot如何引入本地jar包?

maven打war包的时候如何设置不把web-inf下 lib文件夹的jar打包进去

maven 可运行 jar 包的打包,包含依赖 jar 包

maven 可运行 jar 包的打包,包含依赖 jar 包

解决maven打包打不进lib下的第三方jar包问题

解决IDEA打包SpringBoot,jar包打包不出去问题