我有一个spring boot mavel多模块项目。
如果spring引导模块依赖于模块A
并且在模块src/main/resources
的{{1}}文件夹中,则会在最终的spring boot中捆绑一个属性文件或其他资源应用程序,我怎样才能实现这一点。
目前,如果我在模块A JAR上运行A
,它包含文件:
jar -tf
然而:
jar -tf module-a/target/module-a-0.0.1-SNAPSHOT.jar | grep changelog
db/changelog/
db/changelog/db.changelog-master.yaml
提前感谢任何建议。
答案 0 :(得分:3)
如果我正确理解您的要求,我相信您可以在Spring Boot模块中使用unpack
的{{1}}目标:
maven-dependency-plugin
这会将资源从<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>${project.groupId}</groupId>
<artifactId>module-a</artifactId>
<version>${project.version}</version>
<includes>**/*.yaml</includes>
</artifactItem>
</artifactItems>
<outputDirectory>${project.build.directory}/classes/</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
复制到module-a
。我在GitHub上发布了一个完整的示例。