Spring Boot 配置与jar分开的一种实现方式
Spring Boot 配置与jar分离的一种实现方式
最近项目中遇到一个问题,就是要把Spring Boot 的jar包与配置分离
(不仅仅是application.xml)
咱们费活少说,上maven配置
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.xxx.Application</mainClass>
</manifest>
<manifestEntries>
<Class-Path>/srv/service-jar/xxx-config/</Class-Path>
</manifestEntries>
</archive>
<excludes>
<exclude>application*.properties</exclude>
<exclude>logback.xml</exclude>
<exclude>validator/**</exclude>
<exclude>product/**</exclude>
<exclude>groovy/**</exclude>
</excludes>
</configuration>
</plugin>
注意此处
<manifestEntries>
<Class-Path>/srv/service-jar/xxx-config/</Class-Path>
</manifestEntries>
你会发现打完jar包后
xxx.jar的 META-INF/MANIFEST.MF
多出一项Class-Path: /srv/service-jar/xxx-config/
没错
就是这样来改变classpath
最近项目中遇到一个问题,就是要把Spring Boot 的jar包与配置分离
(不仅仅是application.xml)
咱们费活少说,上maven配置
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.xxx.Application</mainClass>
</manifest>
<manifestEntries>
<Class-Path>/srv/service-jar/xxx-config/</Class-Path>
</manifestEntries>
</archive>
<excludes>
<exclude>application*.properties</exclude>
<exclude>logback.xml</exclude>
<exclude>validator/**</exclude>
<exclude>product/**</exclude>
<exclude>groovy/**</exclude>
</excludes>
</configuration>
</plugin>
注意此处
<manifestEntries>
<Class-Path>/srv/service-jar/xxx-config/</Class-Path>
</manifestEntries>
你会发现打完jar包后
xxx.jar的 META-INF/MANIFEST.MF
多出一项Class-Path: /srv/service-jar/xxx-config/
没错
就是这样来改变classpath