我有一個項目,我需要打破版本號,並在構建清單文件時訪問它的組成部分。在做了一些搜索之後,我發現了build-helper-maven-plugin,並發現我的問題已經解決。我將這個插件添加到了主POM中,如下所示。構建助手插件不解析項目版本
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<phase>validate</phase>
<id>parse-version</id>
<goals>
<goal>parse-version</goal>
</goals>
<configuration>
<propertyPrefix>parsedVersion</propertyPrefix>
</configuration>
</execution>
</executions>
</plugin>
此時的項目版本是3.0.0-SNAPSHOT。我想看看所有的部分(儘管在最終版本中我可能不會全部使用它們),所以我將這些行添加到我的清單文件中。
<value name="majorVersion">${parsedVersion.majorVersion}</value>
<value name="minorVersion">{$parsedVersion.minorVersion}</value>
<value name="incrementalVersion">${parsedVersion.incrementalVersion}</value>
<value name="versionQualifier">${parsedVersion.qualifier}</value>
<value name="parsedBuildNumber">${parsedVersion.buildNumber}</value>
建築後我得到了這個。
<value name="majorVersion">0</value>
<value name="minorVersion">{$parsedVersion.minorVersion}</value>
<value name="incrementalVersion">0</value>
<value name="versionQualifier">3.00.0-SNAPSHOT</value>
<value name="parsedBuildNumber">0</value>
值標籤實際上是一個XML標籤並沒有在清單文件中的收盤價的標籤,我不得不刪除他們,因爲他們被搞亂了顯示。
所以增量版本看起來是正確的,儘管我並不是所有人都確信主要版本是不正確的,它沒有發現任何次要版本,並且限定符作爲整個版本號返回,而不是隻是我期望的SNAPSHOT片。由於我們沒有Maven認爲的內部版本號,所以我可以看到構建號爲零的位置是正確的。
關於爲什麼版本號似乎不解析的任何想法?我是否錯誤地實現了這個插件?
感謝 史蒂夫
這對在小版本醒目的錯字,我一直在尋找合適的過去那種。現在我得到了所有棋子的零值,主要的,次要的,增量的,這是不正確的,但我至少得到了一些值,所以這是一個步驟 – 2013-02-15 18:09:09
我添加了一個關於檢查屬性值的註釋,希望它有幫助。 – Anew 2013-02-15 18:53:29
在裝配步驟中正在進行版本信息的過濾或使用。這是一個帶有過濾功能的文件集。 – 2013-02-15 19:55:40