maven本地配置
maven倉庫配置
修改maven/conf/settings.xml文件,把倉庫配置成本地倉庫
<localRepository>repository</localRepository>
在maven/conf/settings.xml.文件添加獲取jar包的地址
<mirror> <id>proxied-releases</id> <name>Release Mirror</name> <url>https://www.test.test/nexus/content/groups/public/</url> <mirrorOf>central</mirrorOf> </mirror>
id、name隨意添加,不影響
url值為公司maven私服地址或阿里maven地址
Jenkins配置maven
jenkins maven setting.xml文件配置
打開Jenkins設置下的全局工具設置,配置如下,文件路徑為本地 maven setting.xml 文件路徑
Name為maven版本,MAVEN_HOME 為maven安裝路徑
Jenkins項目任務配置
構建配置
Root POM:拉取項目代碼的 pom.xml 文件
Goals and options:構建所使用的命令 命令解析:clean -PQA -DskipTests package install:清除舊項目后使用配置文件中的QA配置進行打包target下的jar安裝到本地倉庫 clean:clean有兩種 maven clean:maven clean是maven的一個清潔生命周期,目的是刪除build目錄下的構建輸出,體現在文件系統上是刪除了Target目錄所有文件,包括該目錄 project clean:project clean是IDE對已經生成的class文件的刪除操作,體現在文件系統上是只刪除了Target目錄中classes文件夾中所有內容 mvn package -Pqa -DskipTests package :基本命令,進行打包 -Pqa:項目開發需要有多個環境,一般為開發,測試,預發布,正式4個環境,通過maven可以實現按不同環境進行打包部署。也就是dev(開發)、qa(測試)、pre(預發)、生產正式(prod)四個環境,對應的都有各自的配置文件properties。 通過 -P 傳入環境id參數就可以選擇環境,比如傳入 qa,即命令 -Pqa 。會得到 qa.peroperties 配置文件,這是因為在 pom.xml 文件中有這樣的配置
<profiles> <!-- 默認 --> <profile> <id>dev</id> <properties> <profile.active>dev</profile.active> </properties> <activation> <activeByDefault>true</activeByDefault> </activation> </profile> <!-- 質檢 --> <profile> <id>QA</id> <properties> <profile.active>QA</profile.active> </properties> </profile> <!-- 生產 --> <profile> <id>pro</id> <properties> <profile.active>pro</profile.active> </properties> </profile> </profiles>
<build> <filters> <filter>src/main/resources/env/${env}.properties</filter> </filters> <resources> <resource> <directory>src/main/resources/</directory> <filtering>true</filtering> <includes> <include>**/*.properties</include> </includes> </resource> </resources> .... </build>
其中${env}.properties就是讓我們傳入環境參數qa、dev、prod、pre。
- DskipTests:跳過測試,否則打包過程很慢
打包上傳啟動
執行shell
jenkins和項目服務在一台服務器上,所以不用跨服務器傳包,都是本地拷貝,推薦這種方式,打包項目賊快