<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ThinkChat2.0新版上線,更智能更精彩,支持會話、畫圖、視頻、閱讀、搜索等,送10W Token,即刻開啟你的AI之旅 廣告
                [TOC] # 簡介 這個插件是用來修改pom的版本的,幾乎是所有的版本號,比如工程,依賴和插件等等。 maven的版本管理經驗,所有依賴都有一個root-pom來統一管理。 這樣的話,每發一個release的包,其實就應該同時也修改了root-pom中這個包的版本號,這樣,其他工程才能依賴到最新的代碼。那么修改root-pom版本號的任務就可以交給versions插件。 這個可以放在jenkins中作為一個post-action來處理。每構建一個release包就觸發一次root-pom修改 ~~~ <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>versions-maven-plugin</artifactId> <version>2.3</version> </plugin> </plugins> ~~~ # 常用命令 **修改本工程的版本號:** ~~~ mvn versions:set -DnewVersion=xxx ~~~ 然后install生成包 ~~~ mvn clean install -Dmaven.test.skip=true ~~~ **回滾:** versions的任何目標,最終都會先記錄一個pom.xml.versionsBackup文件暫存改動,可以使用 `mvn versions:revert`來回滾,這樣就會恢復成`pom.xml.versionsBackup`文件的樣子同時刪除`pom.xml.versionsBackup`。 當然也可以`mvn?versions:commit`來提交修改,刪除`pom.xml.versionsBackup`文件 **修改依賴的版本:** * versions:use-next-release在pom中搜索所有新版本的非快照版本,并將它們替換為下一個版本。 * versions:use-latest-releases?在pom中搜索所有新版本的非快照版本,并用最新版本替換它們。 * versions:use-next -SNAPSHOT在pom中搜索所有新的非快照版本,并將它們替換為新的快照版本。 * versions:use-latest-snapshots在pom中搜索所有最新的非快照版本,并將它們替換為最新的快照版本。 * versions:use-next-versions在pom中搜索更新版本的所有版本,并用新版本替換它們。 * versions:use-latest-versions在pom中搜索所有更新的版本,并用最新的版本替換它們。 其實主要就這六個。前四個只會修改pom中的release依賴版本號,修改為下一個release或者snapshot。后兩個會修改所有的依賴為下一個或者最新的版本號。 注意2.0版本的下一個snapshot為2.1-SNAPSHOT而非3.0-SNAPSHOT。 當然可以指定修改特定的依賴的版本號,通過添加`-Dincludes=group:artifact`即可,并且支持通配符。 另外,默認會修改dependency和dependencyMangement的版本號,可以加參數限定: ~~~ mvn versions:use-next-releases -DprocessDependencies=false mvn versions:use-next-releases -DprocessDependencyManagement=false ~~~ # 修改pom中的property 可以使用set-property目標來修改pom中定義的property。這個在修改root-pom中的依賴版本會很有用。因為一般root-pom中的依賴的版本都是通過property來定義的,這樣通過修改property就能修改依賴版本了,更新一個工程之后修改root-pom會很有用。 ~~~ <dependency> <groupId>com.liyao</groupId> <artifactId>libJar</artifactId> <version>${lib.version}</version> </dependency> <lib.version>1.0-SNAPSHOT</lib.version> ~~~ ~~~ mvn versions:set-property -Dproperty=lib.version -DnewVersion=1.1-SNAPSHOT ~~~ # 參數介紹 |參數 |默認值 |說明 | | --- | --- | --- | |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 |是否更新在子模塊中顯式指定的匹配版本(如/項目/版本)。| # 版本控制 ## 修改全模塊版本號 修改版本的時候,必須規范模塊中pom.xml文件的編寫,顯式聲明其父子節點信息(`<parent></parent>|<modules></modules>`),需要修改全部模塊的版本號為1.0.1-SNAPSHOT,可以在最頂層的根目錄,如產品主干在src下,cmd進入根目錄,運行命令 ~~~ mvn versions:set -DoldVersion=* -DnewVersion=1.0.1-SNAPSHOT -DprocessAllModules=true -DallowSnapshots=true ~~~ 修改后輸入: ~~~ mvn clean install -DskipTests ~~~ 成功后,輸入: ~~~ mvn dependency:tree -Dverboss -Dincludes=${project.groupId}:${project.artifactId} ~~~ 檢查工程的依賴樹是否全部依賴了1.0.1-SNAPSHOT的base模塊 如果全部模塊版本號都改為了:1.0.1-SNAPSHAOT,即修改成功。 若修改失敗,可是使用命令回退版本號: ~~~ mvn versions:revert ~~~ 若確認版本,可使用命令: ~~~ mvn versions:commit ~~~ 修改版本所產生的backup文件會自動刪除。 ## 修改模塊版本 若開需要推進某模塊版本號,或有問題需要回退某模塊的版本,或者區域分支想更新某模塊為新版本,例如修改base模塊的版本號為1.0.1-SNAPSHOT,cmd命令行進入模塊目錄。 ~~~ mvn versions:set -DnewVersion=1.0.1-SNAPSHOT -DprocessAllModules=true -DallowSnapshots=true ~~~ 即可修改該模塊及依賴該模塊的版本號為1.0.1-SNAPSHOT,其中參數-DallowSnapshots=true,表示允許release版修改為snapshot版。 加上參數`-DprocessAllModules=true`表示該模塊下的子模塊及依賴其的版本號都改成`1.0.1-SNAPSHOT`。 ## 修改指定模塊版本號 如果想修改指定模塊的版本號即整個模塊中依賴其的版本號,比如`groupId:groupId:{artifact}`的版本號修改為1.0.2-SNAPSHOT,可以運行命令: ~~~ mvn versions:set -DgroupId=${groupId} -DartifactId=${artifact} -DoldVersion=* -DnewVersion=1.0.2-SNAPSHOT -DallowSnapshots=true ~~~ 其中,artifactId、groupId和version在maven中形成三維坐標以指定模塊,而在這里指定`-DgroupId=${groupId} -DartifactId=${artifact}` 確定制定修改的模塊為`${groupId}:${artifact}`。 如果不希望修改依賴mongodb的模塊也修改mongodb的版本號,可以使用參數-DprocessDependencies=false取消依賴其的修改,從而只修改xxx工程的版本號: ~~~ mvn versions:set -DgroupId=${groupId} -DartifactId=xxx -DoldVersion=* -DnewVersion=1.0.2-SNAPSHOT -DallowSnapshots=true -DprocessDependencies=false ~~~ # 快照版與正式版切換 有些時候我們會先用SnapShot版本,當他發布正式版本的時候,我們就需要換過來,例如 ~~~ <dependency> <groupId>org.codehaus.cargo</groupId> <artifactId>cargo-core-api</artifactId> <version>1.0-alpha-7-SNAPSHOT</version> </dependency> ~~~ 然后我們執行 ~~~ mvn versions:unlock-snapshots ~~~ 版本就可以變成,SNAPSHOT就去掉了 ~~~ <dependency> <groupId>org.codehaus.cargo</groupId> <artifactId>cargo-core-api</artifactId> <version>1.0-alpha-7</version> </dependency> ~~~ 也可以指定具體的庫進行更新 ~~~ mvn versions:use-releases -Dincludes=org.codehaus.plexus:plexus-utils ~~~ 默認情況下dependencyManagment和dependencies區域內的版本都會被更新,需要指定特定版本的話就需要使用 ~~~ mvn versions:use-releases -DprocessDependencies=false mvn versions:use-releases -DprocessDependencyManagement=false ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看