Spring boot 使用profile完成不同環境的maven打包功能
我們在日常開發工作中通常會根據不同的專案執行環境,新增不同的配置檔案,例如 開發環境,測試環境,生產環境等,每次手工的修改配置檔案太過於繁瑣。通過maven打包時確定需要使用的配置檔案可以很好的解決這個問題。
下面看一下程式碼目錄
application-dev.properties對應開發環境
application-test.properties對應測試環境
application-prod.properties對應生產環境
application.properties中填寫[email protected]@,這裡的@[email protected]是一個變數對應pom檔案裡的環境配置。
下面是pom檔案的配置
在pom檔案裡分別配置好不同環境的檔名稱,注意:<activatedProperties>dev</activatedProperties>中的dev與配置檔名稱application-dev.properties要一致<profiles> <profile> <id>dev</id> <properties> <!-- 環境標識,需要與配置檔案的名稱相對應 --> <activatedProperties>dev</activatedProperties> </properties> <activation> <!-- 預設環境 --> <activeByDefault>true</activeByDefault> </activation> </profile> <profile> <id>test</id> <properties> <activatedProperties>test</activatedProperties> </properties> </profile> <profile> <id>prod</id> <properties> <activatedProperties>prod</activatedProperties> </properties> </profile> </profiles>
activatedProperties名稱對應application.properties配置檔案中的spring.profiles.active=@[email protected]
當maven打包時會用pom檔案裡<activatedProperties>dev</activatedProperties>中的值替換掉application
下面配置maven打包外掛
<build>
<resources>
<resource>
<!--配置檔案路徑 -->
<directory>src/resources</directory> <!--這裡對應專案存放配置檔案的目錄-->
<!--開啟filtering功能 -->
<filtering>true</filtering>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>1.5.2.RELEASE</version>
<configuration>
<mainClass>com.duan.SpringbootMybatis.App</mainClass><!--springboot啟動類目錄-->
</configuration>
<executions>
<execution>
<goals>
<!--建立一個自動可執行的jar或war檔案 -->
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
配置完成,下面我們進行打包操作,我是使用eclipse進行打包,專案pom檔案右鍵,run as ---> maven build
觀察控制檯輸入日誌
已經構建成功,重新整理一下專案,target會生成SpringbootMybatis-0.0.1-SNAPSHOT.jar包。
我們可以觀察一下jar包的目錄結構:
開啟manifest.mf檔案
檢視啟動類是否正確。
下面我們執行一下這個jar包,輸入執行命令,java -jar
出現啟動成功資訊,對應埠號是8888與我們application-prod.properties配置檔案中的一致,說明配置成功了。
瀏覽器訪問一下
訪問成功!
主要利用了maven打包時,攔截配置檔案使用pom檔案中的值替換掉[email protected]@中的變數,完成動態配置檔案的使用功能。
相關推薦
Spring Boot+Profile實現不同環境讀取不同配置
images alt quest color ive 作用 讀取 ron 總結 文件結構如下: 但是官方推薦放在config文件夾下。 作用: 不同環境的配置設置一個配置文件,例如:dev環境下的配置配置在application-dev.properties中。p
Spring boot 使用profile完成不同環境的maven打包功能
我們在日常開發工作中通常會根據不同的專案執行環境,新增不同的配置檔案,例如 開發環境,測試環境,生產環境等,每次手工的修改配置檔案太過於繁瑣。通過maven打包時確定需要使用的配置檔案可以很好的解決這個問題。 下面看一下程式碼目錄 application-dev.prop
maven的profile構建不同環境打包
1.首先建立maven工程(略),專案結構如下 2.pom檔案配置 2.1 新增<profiles標籤>,在<profiles>分別定義各個<profile>用來配置開發,測試以及生產的全域性變數,程式碼如下: <p
使用maven profile 實現不同環境打包
maven 的build 配置可以在兩處出現: <span style="font-size:14px;"><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://ww
Spring boot 專案分環境 Maven 打包,動態配置檔案,動態配置專案
Spring boot Maven 專案打包 使用Maven 實現多環境 test dev prod 打包 專案的結構 在下圖中可用看出,我們打包時各個環境需要分開,採用 application-環境.yml 的方式命名 環境配置開始 首先我們需要在app
使用maven profile 構建不同環境引用不同的值
技術分享 resource filters htm rect file .com enc fig 需要做的配置如下 <profiles> <profile> <id>dev</id>
MAVEN利用Profile構建不同環境的部署包
con 都在 lte res 我們 ins ons plugins -i 通常,項目要在多個環境部署,每種環境都有各自的資源配置參數,比如:數據庫連接、Redis服務器地址等等。 所以,各個環境打包出來的資源是不一樣的,如果手動的修改,費時費力。我們可以利用MAVAN的pr
maven學習(下)利用Profile構建不同環境的部署包
接上回繼續,專案開發好以後,通常要在多個環境部署,象我們公司多達5種環境:本機環境(local)、(開發小組內自測的)開發環境(dev)、(提供給測試團隊的)測試環境(test)、預釋出環境(pre)、正式生產環境(prod),每種環境都有各自的配置引數,比如:資料庫連線、遠端呼叫的ws地址等等。如果每個環境
maven profile 和 spring boot profile的區別
maven profile 配置 maven profile 和 spring boot profile的區別 看看哪個適合你的使用場景,這兩個是不一樣的使用場景,具體細節點選上面的連結。 appli
maven屬性、資源過濾、profile、不同環境構建專案
maven針對不同環境構建專案 maven使用屬性、資源過濾及profile支援針對不同環境構建專案 maven屬性 一、maven共有六類屬性 1、最常見的是自定義屬性,即在pom檔案裡通過<properties>元素定義的屬性 2、環境變數屬性,可以使用env.引用,可以使用mv
maven屬性、資源過濾、profile、不同環境構建項目
定義 倉庫 div sources code ngs demo 資源過濾 close maven針對不同環境構建項目 maven使用屬性、profile及資源過濾支持針對不同環境構建項目 maven屬性 一、maven共有六類屬性 1、最常見的是自定義屬性,即在pom文件
Spring Boot Profile 與Maven Profile 整合實踐
在現代的專案開發中多人協作、多環境部署已經是必不可少的軟體開發方式,筆者目前正在開發的一個基於Spring Boot 專案環境就有四套之多,包括(本地、測試、演練、生產)。尤其是現代的大型專案開發,構建複雜、參與人數眾多等因素,使得高效的構建工具必不可少。而Ma
在spring中通過Profile配置不同環境下log配置
一般我們在開發的時候,希望log打到控制檯上,而在釋出的時候,希望打到檔案裡面。在spring裡面可以通過profile進行切換。 在application.yml裡面,每個profile增加 logging: config: classpath:log-dev.xm
一點一點學maven(13)--利用maven的filter和profile實現不同環境使用不同的配製
在我們平常的java開發中,會經常使用到很多配製檔案(xxx.properties,xxx.xml),而當我們在本地開發(dev),測試環境測試(test),線上生產使用(product)時,需要不停的去修改這些配製檔案,次數一多,相當麻煩。現在,利用maven
利用spring的profile切換不同的環境
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee"
利用maven的Profile構建不同環境的部署包,選擇不同properties構建不同的環境
參考文章網址: http://www.cnblogs.com/yjmyzz/p/3941043.html 專案開發好以後,通常要在多個環境部署,我公司有三套:prod,dev,test,資料庫有兩套mysql,oracle 專案的相關環境的目錄: pom.xml中的p
利用maven的resources、filter和profile實現不同環境使用不同配置檔案
在我們平常的java開發中,會經常使用到很多配製檔案(xxx.properties,xxx.xml),而當我們在本地開發(dev),測試環境測試(test),線上生產使用(product)時,需要不停的去修改這些配製檔案,次數一多,相當麻煩。現在,利用maven的filter和profile功能,我們可實現在
第十四章 springboot + profile(不同環境讀取不同配置)
img ont 代碼執行 ring stp uri div () rim 具體做法: 不同環境的配置設置一個配置文件,例如:dev環境下的配置配置在application-dev.properties中;prod環境下的配置配置在application-prod.
Spring Boot 多模塊與 Maven 私有倉庫
.project date content reporting pts fin plugin cond ssl 前言 系統復雜了,抽離單一職責的模塊幾乎是必須的;若需維護多個項目,抽離公用包上傳私有倉庫管理也幾乎是必須的。其優點無需贅述,以下將記錄操作過程。 1. 多模塊
Spring boot集成spring-boot-starter-data-jpa環境搭建
lis ESS hiberna 構建 TP xtend 默認 location col 1、創建Spring boot項目 2、保存等待構建完成 3、增加spring-boot-starter-data-jpa、內存數據庫依賴包hsqldb