2011-12-24 127 views
1

我們試圖根據svn修訂版本號自動更新appengine版本號。當前svn修訂版本號更新版本在appengine-web.xml中

這是AppEngine上-web.xml文件:

<appengine-web-app xmlns="http://appengine.google.com/ns/1.0"> 
    <application>XYZ</application> 
    <version>5646</version> 
     .... 

我們如何與當前SVN版本號自動在每天更換5646?

理想情況下,它是一個命令行,與'svnversion'有關(輸出看起來像10358:10359)。

回答

1

我不得不一次又一次地寫:

如果你可以使用Windows的命令行的程序,揮霍使用SubWCRev在TortoiseSVN:

  • 寫,並加入到回購模板文件AppEngine上的Web .xml,版本字符串替換爲SubWCRev-keyword($ WCREV $在你的情況下)
  • 當你想在xml文件中有真實的數據時,在你的工作副本中運行SubWCRev,得到最終文件。 Useit
+0

Mac和Linux怎麼樣? – 2012-01-21 17:42:29

+0

@TomFishman - 沒有運氣,AFAIK – 2012-01-21 19:42:41

0

好吧,這可能看起來像一個煩惱,但它是最簡單的,如果你將你的項目轉換爲Maven項目。然後,您可以使用像maven-buildNumber-plugin這樣的插件動態替換您的任何構建文件中的任何值(使用stardard maven-replacer-plugin)。

需要注意的是,您必須使用maven-gae-plugin來編譯和部署您的應用程序。我使用Eclipse,它只是意味着不是在UI中使用Google App Engine按鈕,而只是進行構建配置(即gae:deploy),然後只需在將來單擊構建按鈕即可。

好處是,現在你可以在你的項目附近進行任何複雜的構建步驟修改,並且通過Maven的魔力,你不需要從Maven本身下載任何額外的插件或者jar,因爲它會只需爲您提取並安裝它們即可。這使得其他人更容易從稀疏的SVN中檢查您的GAE應用程序並隨時進行構建。

+0

我完全同意。如果你可以在這裏放置一個示例代碼會很好,因爲我們不知道如何從maven更改appengine-web.xml。 – 2012-01-23 20:23:08