-
發布本地jar到私服 命令
mvn deploy:deploy-file -Dmaven.test.skip=true -Dfile=D:\Downloads\OJDBC-Full\ojdbc6.jar -DgroupId=com.oracle -DartifactId=ojdbc6 -Dversion=11.2.0.4 -Dpackaging=jar -DrepositoryId=releases -Durl=http://192.168.0.168:8081/repository/maven-releases/
-
持續集成服務器上的集成命令
打包jar
mvn clean install -B -e -U -Dmaven.repo.local=/home/juven/ci/foo-repo/
發布jar到私服
mvn clean deploy -B -e -U -Dmaven.repo.local=/home/juven/ci/foo-repo/
在持續集成服務器上使用怎樣的 mvn 命令集成專案,這個問題乍一看答案很顯然,不就是 mvn clean install 么?事實上比較好的集成命令會稍微復雜些,下面是一些總結:
- 不要忘了clean: clean能夠保證上一次構建的輸出不會影響到本次構建,
- 使用deploy而不是install: 構建的SNAPSHOT輸出應當被自動部署到私有Maven倉庫供他人使用,這一點在前面已經詳細論述,
- 使用-U引數: 該引數能強制讓Maven檢查所有SNAPSHOT依賴更新,確保集成基于最新的狀態,如果沒有該引數,Maven默認以天為單位檢查更新,而持續集成的頻率應該比這高很多,
使用-e引數:如果構建出現例外,該引數能讓Maven列印完整的stack trace,以方便分析錯誤原因, - 使用-Dmaven.repo.local引數:如果持續集成服務器有很多任務,每個任務都會使用本地倉庫,下載依賴至本地倉庫,為了避免這種多執行緒使用本地倉庫可能會引起的沖突,可以使用-Dmaven.repo.local=/home/juven/ci/foo-repo/這樣的引數為每個任務分配本地倉庫,
- 使用-B引數:該引數表示讓Maven使用批處理模式構建專案,能夠避免一些需要人工參與互動而造成的掛起狀態,
- 使用-X引數:開啟DEBUG模式,
-
pom-config 插件使用 (自定義的maven插件)
修改pom properties 里節點的版本號
mvn com.zy:pom-config:1.0.1:pom-config -Dparams="hiip-user-api.version=0.44.1-SNAPSHOT" -
修改全模塊版本號
-
A 執行以下命令 mvn versions:set -DoldVersion=* -DnewVersion=1.0.1-SNAPSHOT -DprocessAllModules=true -DallowSnapshots=true 如果還有沒有修改到的,執行下方的命令重試, mvn versions:update-child-modules
-
B 執行編譯打包的命令 mvn clean install -DskipTests
-
C 查看依賴樹的版本是否修改成功 mvn dependency:tree -Dverboss -Dincludes=${project.groupId}??{project.artifactId}
-
D 失敗就回退 mvn versions:revert
-
E 成功則提交 mvn versions:commit
-
引數默認值說明
指令 值 說明 allowSnapshots false 是否更新-snapshot快照版 artifactId ${project.artifactId} 指定artifactId generateBackupPoms true 是否備份pom檔案 groupId ${project.groupId} 指定groupId newVersion 設定的新版本號 nextSnapshot false 更新版本號為下一個快照版本號 oldVersion ${project.version} 指定需要更新的版本號可以使用預設‘*’ processAllModules false 是否更新目錄下所有模塊無論是否宣告父子節點 processDependencies true 是否更新依賴其的版本號 processParent true 是否更新父節點的版本號 processPlugins true 是否更新插件中的版本號 processProject true 是否更新模塊自身的版本號 removeSnapshot false 移除snapshot快照版本,使之為release穩定版 updateMatchingVersions true 是否更新在子模塊中顯式指定的匹配版本(如/專案/版本),
-
本文由博客群發一文多發等運營工具平臺 OpenWrite 發布
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/174986.html
標籤:Java
上一篇:用戶密碼到底要怎么加密存盤?
