springboot打包與配置檔案外接
阿新 • • 發佈:2018-11-25
目標:
1.將普通的MAVEN JAVA工程打包成SpringBoot可執行的jar包
2.將application.yml和log4j2.xml
1.打包
SpringBoot專案打包要求將依賴的jar全部打進去,因為SpringBoot的自動配置需要用到裡面的spring.factory檔案,該檔案是自動配置的關鍵步驟之一
如果在IDEA或者ECLPSE裡面使用直接建立SpringBoot工程,然後打包即可完成上面的需求,但我是在Idea裡面建立的普通MAVEN工程,然後打包依賴的任何JAR都沒有打進去
然後百度了半天,分享一下:
在<build></build>標籤中新增如下配置
<plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>1.5.9.RELEASE</version> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins>
執行打包操作
打包出來結果
檢視打包內部結果
配置檔案外接
在pom.xml檔案中的<build></build>增加如下內容
<resources> <resource> <directory>src\main\resources</directory> <excludes> <exclude>application.yml</exclude> <exclude>log4j2.xml</exclude> </excludes> </resource> </resources>
重新打包
對比發現application.yml和log4j2.xml沒有在jar包中
啟動測試
java -jar provider-1.0.0.jar --logging.config=./log4j2.xml
啟動正常
日誌也正常輸出
結束