【发布时间】:2016-10-24 00:33:51
【问题描述】:
我正在开发一个 Spring Boot 项目(项目 A),该项目将包含在其他项目(项目 B、项目 C ...)中。我在项目 A 中有几个依赖项,但在导入项目 A 的项目中,可能需要一些或只需要一个。 我试图找到一种在打包项目 A 时排除 jar 依赖项的方法,以便项目 B 在运行时提供所需的依赖项。当项目 A 独立运行以进行测试时,我希望有可用的依赖项。
已尝试以下方法
我尝试过使用:
<scope>provided</scope>
<optional>true</optional>
罐子最终还是在最终的工件中。
还尝试将以下内容添加到 spring-boot-maven-plugin
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
<configuration>
<excludeArtifactIds>spring-boot-starter-redis</excludeArtifactIds>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
这只会删除 spring-boot 依赖项,但此依赖项的子项的 jar 仍将最终出现在最终工件中。
【问题讨论】:
标签: java spring maven spring-boot