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 CLI-プログラムを使用することができた場合は、youhaveはTortoiseSVNのからSubWCRev使用する:

  • 書き込みとのappengine-Web用レポテンプレート・ファイルに追加します.xml、SubWCRev-keyword(あなたのケースでは$ WCREV $)に置き換えられたバージョン文字列xml-fileに実際のデータを入れたい場合は、作業コピーでSubWCRevを実行して、最終ファイルを入手してください。 Useit
+0

MacとLinuxはどうですか? –

+0

@TomFishman - 運がいい、AFAIK –

0

これは迷惑に思えるかもしれませんが、プロジェクトをMavenプロジェクトに変換すると最も簡単です。次に、maven-buildNumber-pluginのようなプラグインを使用して、スタンドアロンのmaven-replacer-pluginを使用して任意のビルドファイル内の任意の値を動的に置き換えることができます。

アプリケーションのコンパイルとデプロイには、maven-gae-pluginを使用する必要があります。 Eclipseを使用しているため、UIのGoogle App Engineボタンを使用するのではなく、ビルド設定(gae:deploy)を作成してから、今後ビルドボタンをクリックするだけです。

これで、プロジェクトに複雑なビルドステップをいくつでも変更できるようになりました.Mavenの魔法を使うと、余分なプラグインやMavenを超えてJARファイルをダウンロードする必要はありません。それらをフェッチしてインストールしてください。これにより、他の人々があなたのGAEアプリをスパースなSVNからチェックし、いつでもビルドすることが容易になります。

+0

私は全く同意します。 appengine-web.xmlをmavenから変更する方法がわからないため、サンプルコードをここに入れることができればうれしいでしょう。 –