天天看点

maven项目 打包成jar包无法打入本地jar包的解决办法

总括:注意 lib: <filtering>false</filtering> resource: <filtering>true</filtering>的设置 否则配置文件中的配置在java中占位符获取不到

项目中想要使用本地的jar包的时候,我们在编译器中可以导入,并且在打包成war包的时候也能打入进去,但是将项目打包成jar包的时候 却无法打入。因为jar包中 jar的文件打包在了BOOT-INF中。如下图

maven项目 打包成jar包无法打入本地jar包的解决办法
maven项目 打包成jar包无法打入本地jar包的解决办法

这里可以看到,maven中的jar包全部在这里,所以我们在使用本地jar包的时候,要告诉maven打包之后要将本地jar包放在哪。需要的配置如下:${basedir}代表项目地址,systemPath就是jar包存放的位置,scope作用域必须为system(代表本地jar包),其他的自己随便编写

<dependency>
            <groupId>com.collagensdk</groupId>
            <artifactId>collagensdk</artifactId>
            <version>1.0.0</version>
            <scope>system</scope>
            <systemPath>${basedir}/src/main/webapp/lib/collagensdk.jar</systemPath>
        </dependency>

           

然后再pom的build中添加节点

<resources>
            <resource>
                <directory>${basedir}/src/main/webapp/lib</directory>
                <targetPath>BOOT-INF/lib/</targetPath>
				  <filtering>false</filtering>
                <includes>
                    <include>**/*.jar</include>
                </includes>
            </resource>
		 <resource>
                  	 <directory>src/main/resources</directory>
      			<filtering>true</filtering>
   		</resource>
        </resources>
           

到此ok

继续阅读