1

バージョン管理を使用するプロジェクトを開発しています:

  1. バージョン名はPOMファイルに入力されています

  2. to-be-created .msiファイル名の一部としても使用されます。file_[version].msi

  3. このプロジェクトがインストールされた後、サービス名で使用され.msi ます。これらのパラメーターは次の場所に保持されます。

    a).propertiesファイルとしてSpring param: version=0340

    b)pom.xmlで<package-version>0340</package-version>

    c)<filename><version>.wxsによって使用されるファイルとしてbuild.xml

    d)上記の.wxsファイルにもMsiProductVersion = "3.4.0"(ドットに注意してください)

configバージョンを1か所だけに保持するために、他のファイルに適切なデータを入力するパラメータを定義する方法はありますか。1 つを簡単に見落として、その名前として表示されるparamを作成するようになりました。すべてのファイルが 1 つのモデル ( など) に属しているわけではないため、難しいと思います。340.msi330 ServiceSpring

4

1 に答える 1

0

リソースの「変数」を置き換えるように Maven を構成できます。これをPOMに追加します:

<build>
    <resources>
        <resource>
            <directory>src/main/resources</directory>
            <filtering>true</filtering>
        </resource>
        <resource>
            <directory>src/test/resources</directory>
            <filtering>true</filtering>
        </resource>
    </resources>
    ...
</build>

これで使用できるよう${project.version}になり、以下のすべてのファイルsrc/main/resourcessrc/test/resources.

他のファイルについては、POM に埋め込まれたAnt タスクを使用するか、POM を読み取り、テンプレートから他の 3 つのファイルを作成する小さなスクリプト (Ant、bash など、好きなもの) を作成できます。

別のオプションは、すべてのファイルを読み取り、正しい値が含まれていることを確認する単体テストを作成することです。そうすれば、バージョンは自動的に更新されませんが、a) バージョンはそれほど頻繁には変更されず (おそらく問題が発生する可能性があります)、b) テストはスクリプトで実行できるものよりもはるかに強力です (それらは可能です)。たとえば、バイナリ ファイルの読み取りと更新など)。

于 2012-08-02T12:34:07.130 に答える