2013-03-13 39 views
0

我有一個buildr項目,它還包含一個用於其他項目的pom.xml。 我希望能夠在增加buildfile VERSION_NUMBER =「13.3.1-SNAPSHOT」的同時增加pom.xml中的13.3.1-SNAPSHOT。在buildr發佈過程中更新pom.xml版本

VERSION_NUMBER在我的構建文件

# Auto-incremented by "release" task. 
VERSION_NUMBER = "13.3.1-SNAPSHOT" 

我詹金斯作業執行運行此版本的命令:

buildr clean release NEXT_VERSION=$nextVersion --trace 

看buildr現場後:http://buildr.apache.org/releasing.html 看來,我可能需要做的像

Release.next_version = lambda do |next_version| # 13.3.1-SNAPSHOT 
    new_version = @[email protected](/\./) 
    new_version[0] = new_version[0] + 1 
    new_version 

    ### Run task to update pom.xml <version> 
    ### Run task commit pom.xml ??? 
end 

Ca任何人都可以幫助我嗎? 如何在同一版本中編輯pom?

+0

通過ruby訪問環境參數時,通常使用'ENV'常量。在你的情況下,這將是'ENV ['NEXT_VERSION']' – phoet 2013-03-13 16:59:00

回答

0

您可以在發佈任務或Release.next_version調用期間編輯pom文件以增加版本。

# code is untested, should just provide an idea 
def replace_version(content) 
    content.gsub(...) 
end 
File.open("pom.xml", "r+") { |f| f.write(replace_version(f.read)) } 
0

Release.next_version只是確定下一個版本號,如果你執行buildr release意思。

看看Buildr::Release中途下坡lib/buildr/core/build.rb。您應該擴展方法update_version_to_next。查看發佈課程的各種擴展(就在其下面),瞭解如何進行擴展。

相關問題