通过将外部jar包安装到本地依赖解决
项目目录如下
libs
└── dsf-sdk-core-1.3.7-SNAPSHOT.jar.jar
src
└── main
├── java
│ └── com
│ └── example
│ ├── openapidemo
│ │ └── OpenApiDemoApplication.java
└── resources
└── application.properties
pom文件中引入了这个外部jar,代码如下
<dependency>
<groupId>com.idss.dsf.test</groupId>
<artifactId>dsf-sdk-core-test</artifactId>
<version>1.3.6-SNAPSHOT-test</version>
<scope>system</scope>
<systemPath>${basedir}/libs/dsf-sdk-core-1.3.7-SNAPSHOT.jar</systemPath>
</dependency>
使用maven打包后,得到项目jar包,运行时,会报错class not load xxx,查看报错的类就来自libs文件夹下的jar包,因此考虑将这个jar包安装到本地,使用如下命令
mvn install:install-file -Dfile=/path/to/your.jar \
-DgroupId=com.example \
-DartifactId=your-artifact-id \
-Dversion=1.0.0 \
-Dpackaging=jar
根据pom文件中的jar包详情填写对应内容,windows下命令需压缩成一行,去除分割符,如下
mvn install:install-file -Dfile=/Desktop/open-api-demo2/open-api-demo2/libs/dsf-sdk-core-1.3.7-SNAPSHOT.jar -DgroupId=com.idss.dsf.test -DartifactId=dsf-sdk-core-test -Dversion=1.3.6-SNAPSHOT-test -Dpackaging=jar
修改pom文件为
<dependency>
<groupId>com.idss.dsf.test</groupId>
<artifactId>dsf-sdk-core-test</artifactId>
<version>1.3.6-SNAPSHOT-test</version>
<!-- <scope>system</scope>-->
<!-- <systemPath>${basedir}/libs/dsf-sdk-core-1.3.7-SNAPSHOT.jar</systemPath>-->
</dependency>
打包运行即可