5

Maven Java ビルド ツールセットの代わりとして何を提案しますか? 単純な Ant スクリプトだけですか? Sコン?

4

7 に答える 7

8

とにかく何を使うかによります。メイブン1?メイブン2?Maven 2 は適切に文書化されており、Ant タスクや自作の Java プラグインと組み合わせて使用​​すると非常に強力です。

Ant の Maven 機能を使用する Ant タスクがあります: http://maven.apache.org/ant-tasks/index.html。したがって、独自の「ライブラリ」を作成する必要はありません。

また、Maven から Ant を呼び出すことができます: http://maven.apache.org/plugins/maven-antrun-plugin/

たとえば、Groovy を使用してスクリプトを作成することもできます: http://groovy.codehaus.org/GMaven+-+Executing+Groovy+Code

または、必要なカスタム ビットの Java コードを記述します: http://maven.apache.org/guides/plugin/guide-java-plugin-development.html

あなたがそれを行うことができる場合、ミックスアンドマッチしない理由はありません;)

于 2009-01-06T07:43:21.550 に答える
5

私は Mavenのアイデアが好きですが、最も単純な構成以外は常にそれと戦っています。そのアーキテクチャはプラグイン ベースであり、プラグインの品質は大きく異なります。ドキュメンテーションはせいぜい大ざっぱです。半分の時間、私が読んでいるドキュメントが Maven 1 または 2 用であるかどうかを判断できません。また、maven-ant-plugin基本的なことを行うために を使用する必要があったことはどれくらいありますか?

私は約 1 年間Apache Ivyを使用していますが、とても満足しています。ただし、少し学習曲線があります。しかし、アクティブなメーリング リストがあり、著者は非常に反応が良いです。

私が最終的にやったのは、「解決」、「コンパイル」、「インストール」などのいくつかの単純なAntターゲットの「ライブラリ」を作成することsrc/main/javaでし<import>た私のさまざまなプロジェクトに。このようにして、Maven スタイルの構成と Ant のすべてのパワーの両方の長所を活用できます。

于 2008-12-22T03:45:53.173 に答える
4

私はIvyで Ant を使用するのが好きです。Ivy は、ビルド システム全体を Maven に合わせて変更することを強制することなく、Maven リポジトリを使用してライブラリの依存関係をフェッチします。

于 2008-12-22T02:43:16.123 に答える
3

私はいくつかのプロジェクトでbuildrを使用しています。非常に簡潔で読みやすいビルド スクリプト (xml なし) であり、maven リポジトリを使用します (簡単な作業で、maven 1 と maven 2)。

私は、いくつかのプロジェクトで作業する Maven1 以降のものを探していましたが、m2 はそれほど魅力的ではありませんでした。Maven は、すべてのビルド システムをやり直す必要があるため、すでにすべての m1 ユーザーを空しく乾燥させていました (私の知る限り、一部は m2 で表現できません)。

于 2008-12-22T03:41:40.497 に答える
1

私は ant4eclipse を使用するのが本当に好きです。プロジェクトの依存関係を通常どおり Eclipse にセットアップすると、すべてのプロジェクトを正しい順序でビルドする単一の ant スクリプトを作成できます。

サードパーティのライブラリの場合、すべての jar を含む (およびエクスポートする) 単一の eclipse プロジェクトをセットアップするか [これはお勧めしません]、サードパーティのライブラリごとに個別のプロジェクトをセットアップして、jar をエクスポートします。[プロジェクトを追跡できる後者の b/c をお勧めします->サードパーティの deps と、必要に応じてパーツをアップグレードします。]

于 2008-12-31T23:00:50.883 に答える
0

Maven には少なくとも 3 つの異なる部分があります。リポジトリ、実装に依存しないライフサイクル、およびデフォルト プロジェクトの規則です。Ivy を使用すると、リポジトリのみが提供されます。

私はそれを使用していませんが、easyantは Maven のより完全な代替となるように設計されていると思います。リポジトリとして Ivy を使用しますが、規則と標準モジュールを追加します。

于 2008-12-23T04:56:03.967 に答える
0

ビルドで複雑なビルド ターゲットが予想される場合は、buildr を使用します。利点は、特定のライブラリにまったく依存しないことです。やりたいことが何でもできるように、Ruby のすべての API が用意されています。Ivy とは異なり、この場合は依然として ANT に縛られています。必要なすべての操作を実行する既に確立されている ANT ベースのビルド メカニズムにライブラリの依存関係を導入したい場合は、Ivy への移行の努力は価値があります。

于 2008-12-22T17:14:49.637 に答える