2013-03-13 23 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。查看发布课程的各种扩展(就在其下面),了解如何进行扩展。

相关问题