Maven编译的时候加载本地路径jar
大家都知道Maven的依赖是通过pom文件管理的,只要配置了<dependency>,Maven就会从本地仓库 -> 远程仓库 -> 中央仓库获取依赖的jar。
但是如果仓库中不存在某个jar,并且这个jar由某些组织自行维护,并不会上传到仓库,这种情况,该怎么处理呢?
SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。解决方案是,在pom文件中配置:
<build>
<pluginManagement>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArguments>
<!-- 编译的时候引入lib-ext目录下的jar(不在仓库的第三方jar) -->
<extdirs>lib-ext</extdirs>
</compilerArguments>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<configuration>
<webResources>
<resource>
<!-- lib-ext打包到WEB-INF/lib下 -->
<directory>lib-ext</directory>
<targetPath>WEB-INF/lib/</targetPath>
<includes>
<include>**/*.jar</include>
</includes>
</resource>
</webResources>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
这样,你只需要将jar放在lib-ext目录,编译的时候依然能到加载到lib-ext中jar的相关类,当前,lib-ext换成其他目录是一样的。
更多精彩

