これは複雑な質問であることは知っていますが、多くのバグと本当に悪いデザインを備えたシステムの場合、どちらが良いかを知りたいと思います。本当に混乱。
実際、このプロジェクトをすでにMavenに変換しており、多くの問題に直面しているため、これを求めています。フォルダー構造を調整し、会社で作成されたひどいフレームワークをプロジェクトから分離し(jar libに変換された)、常にプロジェクトを壊していた多くの詳細を修正し、すべてを行うためにPOM.xmlを構成する必要がありましたAntがすでに実行していて、バージョンとしてアプリケーションで実際に使用されているライブラリを検出します(ライブラリの大部分はバージョン番号なしで名前が変更され、マニフェストファイルは空でした)。
まあ、それは本当に地獄でした。私はこの作業中に夢中になり、いつも私に続いていた質問は「そしてもしそれをIvyに変換していたら?もっと簡単だろう?.
私はIvyで作業したことはありませんが、Antで動作することを知っているので、Mavenよりもプロジェクトを適応させる方が簡単です。一方、MavenはWord全体で使用されています(私は間違っていますか?)。これには理由が必要です。
だからそれは私の質問です:
まあ、これです。どうもありがとう!
まず、IvyのWebサイトから Ivy/Mavenの比較 を読んでください。重要な情報:
まず、最も重要な違いは、それらがまったく同じ種類のツールではないことです。 Apache Mavenはソフトウェアプロジェクト管理および理解ツールですが、Apache Ivyは依存関係管理ツールにすぎず、一般的なビルド管理ツールであるApache Ant™と高度に統合されています。そのため、より興味深い比較では、Apache Ant + IvyとApache Mavenを比較します。しかし、これは依存関係管理のみに焦点を当てたこのページの範囲を超えています。
Ivyは依存関係管理機能をAntに追加するため、実際に使用するビルドシステムに関する質問は次のいずれかです。
ビルドがAntを使用してalreadyである場合、ビルドスクリプトを別のビルドシステムに移植する必要がないため、Ivyの移行が容易になります。
Mavenに移行する場合は、ビルドスクリプトを書き直し、すべてをMaven化するとともに、依存関係管理を構成する必要があるため、より多くの労力が必要になります。
また、依存関係管理設定をIvy/AntからMavenに移植する方が簡単な場合は、その方向に進むことになります。そのため、Ivy依存関係管理は、長期的にはMaven構成に移行するための良い足がかりになるでしょう。