Maven项目导入外部jar包依赖

1,341 阅读1分钟

Maven项目导入外部jar包依赖

Maven官网

解决问题

  1. 项目中使用外部的jar包依赖;
  2. 解决mvn clean package打包外部jar包打不进去的问题;

加入外部依赖步骤

  1. 将外部jar包放到项目的/libs目录(该目录可以按照自己习惯放置);
  2. pom.xml中支持外部依赖build配置:
    <build>
            <finalName>${project.artifactId}</finalName>
            <plugins>
                    <plugin>
                            <groupId>org.springframework.boot</groupId>
                            <artifactId>spring-boot-maven-plugin</artifactId>
                            <executions>
                                    <execution>
                                            <goals>
                                                    <goal>
                                                            repackage
                                                    </goal>
                                            </goals>
                                    </execution>
                            </executions>
                            <configuration>
                                    <jvmArguments>-Dfile.encoding=UTF-8</jvmArguments>
                                    <includeSystemScope>true</includeSystemScope>
                            </configuration>
                    </plugin>
                    <!--引入外部的jar包的plugin-->
                    <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-compiler-plugin</artifactId>
                            <configuration>
                                    <!--指定外部lib,{project}/libs目录存放jar-->
                                    <compilerArguments>
                                            <extdirs>${system.jar.path}</extdirs>
                                    </compilerArguments>
                                    <source>${java.version}</source>
                                    <target>${java.version}</target>
                            </configuration>
                    </plugin>
                    <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-surefire-plugin</artifactId>
                            <configuration>
                                    <!-- 打包跳过Test -->
                                    <skipTests>true</skipTests>
                            </configuration>
                    </plugin>
            </plugins>
    </build>
    
  3. pom.xml加入外部jar包的依赖,配置jar包存放位置:其中${system.jar.path}配置jar包存放根路径,scope需要设置为system
    <properties>
    	<system.jar.path>${project.basedir}/libs</system.jar.path>
    </properties>
    <dependencies>
    	<!-- 导入外部hutool依赖 -->
    	<dependency>
    		<groupId>cn.hutool</groupId>
    		<artifactId>hutool-all</artifactId>
    		<version>5.7.17</version>
    		<scope>system</scope>
    		<systemPath>${system.jar.path}/hutool-all-5.7.17.jar</systemPath>
    	</dependency>
    </dependencies>
    
  4. 重新加载maven,进行测试。

测试外部依赖

  1. 在本项目中使用外部依赖的类与方法;
  2. mvn pacakge/install 打包项目,打开打好的jar包,看外部依赖是否package进去!

源码地址

maven-external-dependency