1

私はJavaアプリケーションを持っています。

Maven Release タスクを実行すると、次のような便利なことができます。

  • バージョン番号を 1.0.0-SNAPSHOT から 1.0.0 に変更
  • pom のバージョン番号を 1.0.1-SNAPSHOT に増やします
  • ソース管理でリリースにタグを付ける
  • 結果のパッケージを私のmavenリポジトリにアップロードします

物事をさらに一歩進めたいと思います。現在手動で行っているビルド後の手順がいくつかあります。

  1. 適切なバージョンで launch4j 構成 xml ファイルを更新します
  2. launch4j を使用して、結果の jar を実行可能ファイルにラップします。
  3. 結果の EXE をパッケージ ディレクトリにコピーします。
  4. いくつかのサポート ファイルをパッケージ ディレクトリにコピーします。
  5. パッケージディレクトリを圧縮します
  6. パッケージをテスターに​​メールで送信します。

最終的には、パッケージ ディレクトリを利用してインストーラーをビルドするという追加のタスクを実行する予定です。

残りの 6 つのタスクを自動化する のに maven や ant が適切なツールかどうかはわかりませんが、どちらか一方または両方の組み合わせで、必要なものを達成できる可能性があるようです。

おそらく、バッチ ファイルや簡単な perl スクリプトを記述して、これらの処理を実行する方法を理解するよりも迅速に行うことができます。永久にリリース プロセスのハック。

これらはビルド/リリースの標準的な部分ではないかもしれないタスクですが、それらを達成するためのベスト/最も一般的なプラクティスがあるはずであるほど一般的に見られているように私には思えます.

4

2 に答える 2

1

ビルド中に maven-assembly-plugin と maven-launch4j-plugin を使用することをお勧めします。

  1. 適切なバージョンで launch4j 構成 xml ファイルを更新します

    プレースホルダーを構成xmlに入れ、ビルド中にmavenに置き換えさせます。

  2. launch4j を使用して、結果の jar を実行可能ファイルにラップします。

    launch4j-maven-plugin を使用して実行可能ファイルを作成します。

  3. 結果の EXE をパッケージ ディレクトリにコピーします。

    結果のアーティファクトを別のフォルダーではなく、リポジトリ マネージャーに配置することをお勧めします。これは、Maven ではすべてのアーティファクトがリポジトリ内に格納されるためです。独自のリポジトリ マネージャー (Artifactory、Nexus、Archiva) をセットアップする必要がある場合があります。

  4. いくつかのサポート ファイルをパッケージ ディレクトリにコピーします。

    それらをリソース ( src/main/resources) として使用すると、自動的にコピーされます。

  5. パッケージディレクトリを圧縮します

    結果の zip ファイルを作成するには、maven-assembly-plugin を使用します。

  6. パッケージをテスターに​​メールで送信します。

    Jenkins などのCIを使用して最終的なメールを送信するか、 maven-changes-pluginを調べることができます。これが解決策になる可能性があります。

これは、言及されたすべてのステップが、通常のビルド中に Maven によって処理できることを意味します。これは、最終的に maven-release-plugin を使用して、上記のすべてのステップを含み、必要なアーティファクトをすべて生成する完全なリリースを生成できることを意味します。

于 2013-06-18T08:57:33.047 に答える
1

私があなたなら、次の組み合わせを試します。

于 2013-06-18T00:17:45.843 に答える