场景:spring boot项目,接入第三方SDK后,由于SDK无法直接在MAVEN里安装,所以只能本地引入,在本地能正常启动,上docker后无法启动;修改配置:
<dependency>
<groupId>com.ancun.netsign</groupId>
<artifactId>netsign-sdk</artifactId>
<version>3.0.6</version>
<scope>system</scope>
<systemPath>${project.basedir}/lib/netsign-sdk-3.0.6.mix.jar</systemPath>
</dependency>
//
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>${spring-boot.version}</version>
<configuration>
<includeSystemScope>true</includeSystemScope>
</configuration>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
2.如何本地安装maven配置,首先要拿到SDK,然后放硬盘下某个目录 ;拉着执行;
比如我的目录在:D:\workSpace\chyl-api-two\tongda-admin\src\main\resources\下;
mvn install:install-file -Dfile="D:\workSpace\chyl-api-two\tongda-admin\src\main\resources\netsign-sdk-3.jar" ` -DgroupId="com.ancun.netsign" ` -DartifactId="netsign-sdk" ` -Dversion="3.0.6" ` -Dpackaging=jar
ADD ./target/tongda-admin.jar ./app.jar
# 复制第三方 JAR 包到镜像中
COPY ./lib/netsign-sdk-3.0.6.mix.jar /ruoyi/server/lib/netsign-sdk-3.0.6.mix.jar
ENTRYPOINT ["java", \
"-Djava.security.egd=file:/dev/./urandom", \
"-Dserver.port=${SERVER_PORT}", \
# 应用名称 如果想区分集群节点监控 改成不同的名称即可
# "-Dskywalking.agent.service_name=ruoyi-server", \
# "-javaagent:/ruoyi/skywalking/agent/skywalking-agent.jar", \
# 将第三方 JAR 包添加到类路径
"-cp", "app.jar:/ruoyi/server/lib/netsign-sdk-3.0.6.mix.jar", \
"-jar", "app.jar"]
浙公网安备 33010602011771号