Maven 使用本地jar包

通常maven管理的项目中的依赖都是在远程仓库中的,假如我需要在maven项目中添加一个本地的jar包依赖,该jar包在仓库中是不存在的,可能是项目组前人开发的一个库,但是没发布到maven仓库中。遇到这种情况我们可以通过在pom中指定本地的依赖,如:

1
2
3
4
5
6
7
<dependency>
<groupId>com.hello.world.tools</groupId>
<artifactId>tools</artifactId>
<version>0.0.1</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/tools-0.0.1.jar</systemPath>
</dependency>

通过以上方法仅仅可以让你的代码编译通过,如果要把这个本地jar包打进assembly jar包,那么需要在pom中添加如下配置,其中jar包文件tools-0.0.1.jar放在根目录下的lib目录下:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>2.5.3</version>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
<resources>
<resource>
<directory>lib/</directory>
<includes>
<include>tools-0.0.1.jar</include>
</includes>
</resource>
</resources>
</build>

转载请注明出处,本文永久链接:https://sharkdtu.github.io/posts/maven-assembly-native-jar.html