请注意,使用system
范围和systemPath
是Maven引入本地JAR文件的传统方法,但这种方法不是最佳实践,因为它会破坏构建的可移植性。
更好的做法是使用Maven的mvn install:install-file
命令将SDK JAR安装到你的本地Maven仓库,然后像其他依赖项一样通过Maven依赖进行管理。
安装SDK到本地Maven仓库的命令如下:
mvn install:install-file -Dfile=path/to/your-sdk.jar -DgroupId=com.example -DartifactId=your-sdk-name -Dversion=1.0.0 -Dpackaging=jar
然后在pom.xml
中引用它:
<dependency>
<groupId>com.example</groupId>
<artifactId>your-sdk-name</artifactId>
<version>1.0.0</version>
</dependency>
我的使用方式,直接将xxx.jar放到了resources/lib
使用了Maven的maven-install-plugin
和maven-dependency-plugin
来将resources/lib
中的JAR文件安装到本地Maven仓库
<project>
<!-- ... 其他配置 ... -->
<dependencies>
<!-- 添加项目依赖 -->
<dependency>
<groupId>com.example</groupId>
<artifactId>sdk-lib</artifactId>
<version>1.0.0</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- 安装SDK JAR到本地仓库的插件配置 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-install-plugin</artifactId>
<version>2.5.2</version>
<executions>
<execution>
<phase>generate-resources</phase>
<goals>
<goal>install-file</goal>
</goals>
<configuration>
<groupId>com.example</groupId>
<artifactId>sdk-lib</artifactId>
<version>1.0.0</version>
<packaging>jar</packaging>
<file>${project.basedir}/src/main/resources/lib/sdk.jar</file>
</configuration>
</execution>
</executions>
</plugin>
<!-- 将依赖打包进JAR的插件配置 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>3.1.2</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>copy-dependencies</goal>
</goals>
<configuration>
<outputDirectory>
${project.build.directory}/${project.build.finalName}/WEB-INF/lib
</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
完成这些配置后,你就可以在Spring Boot项目中正常地导入SDK中的类了,就如同它们是项目中的一个依赖一样。
import com.sdk.library.SomeClass; // 引入SDK中的类
@SpringBootApplication
public class MyApplication {
// ...
}