BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース Ivy 2.0: Apacheプロジェクトとしてリリース

Ivy 2.0: Apacheプロジェクトとしてリリース

Ivyは、プロジェクトの依存性を管理 (記録、追跡、解決、および報告) するツールであり、Apache Antと密接に統合されている。これの2.0ベータバージョンがリリースされた。これは、Apacheプロジェクトとして初のリリースであり、Maven 2リポジトリとの強力な互換性が導入され、並行性サポートも強化された。さらに、いくつかの大きな変更点もある。リリースノート(source)では、Ivyの特徴について次のように記述されている。

  • 柔軟性および構成可能性 -  プロセスにとらわれず、手法や構造に縛られることがない。
  •  Antとの密接な統合 - 依存性の解決から依存性の報告や公開まで、さまざまなAntタスクを提供する。同時に、スタンドアローンツールとしても利用できる。

このリリースには、多数のバグ修正と、バージョン2.0向けチュートリアルの更新に加えて、次のような大きな変更点が含まれる。

  • 設定に置き換えられた構成 - 混乱を防ぐため、Ivyをカスタマイズするために使用される設定は、モジュール構成のために使用される構成から分離された。
  • 設定の読み込みの見直し - 廃止予定である構成タスクは、1つのAntビルドスクリプトでいくつかの設定の使用を可能にする設定データ型に置き換えられた。
  •  ivyrepはデフォルトのパブリックリゾルバではなくなった - これは、ibiblio Maven 2リポジトリに置き換えられた。
  • 相対パスの解決 - 構成ファイルをインクルードするために相対パスが使用されている場合は、依存性の解決に影響を及ぼす可能性がある。これは、2.0でのパス解決が、現在のディレクトリに対する相対ではなく、構成ファイルがインクルードされるIvyファイルに対する相対として行われるためである。

Ivy 2.0は、カスタムプラグインが使用されていない限り、以前のリリースとの互換性を維持する。以前のバージョンはJayasoftプロジェクトとしてリリースされていたので、新しい2.0バージョンでは、パッケージ名がfr.jayasoft.Ivyからorg.apache.ivyに変更されている。

Ivyは、Maven 2リポジトリとの統合を強化したが、プロジェクトでは、2つの製品には大きな違いがあることや、Maven 2に存在する依存性管理機能に対してIvyがいかに実用的な代替方法を提供しているか(source)という点については非常に明確にされてきた。以下に、重要な点をいくつか挙げる。

Maven 2とIvyは並べて比較されることが多いが、実際には同じ種類のツールではない。Ivyは依存性管理機能のみを提供するものであるが、Maven 2は、ソフトウェアプロジェクトを管理する包括的なツールであり、依存性以外にもビルド、報告、および文書化などを主要な情報から管理することができる。Maven 2と比較するのであれば、Ant + Ivy 2.0という構成で考える方が適切だ。

競合管理 - 変化する依存性を制御する場合に、競合に対処する機能 - は、2つのツールで異なる。Ivyでは、競合マネージャおよびルールをモジュールでカスタマイズすることが可能である。一方、Maven 2の競合管理は直近の定義に基づく (つまり、foo 1.0に依存するモジュールから、foo 1.1を使用できるという依存性が導かれることはない)。

Maven 2における依存性の構成は、スコープと呼ばれる概念によって制御される。Maven 2の依存性は、テスト時スコープまたはビルド時スコープの一部として定義されなければならない。Ivyには、それぞれの構成 (必要なビルド成果物の宣言) を他のモジュールの依存関係に関連付けることのできる、複数構成マッピングを作成する機能があり、カスタマイズとして選択できるオプションの幅が広くなっている。

Maven 2の資料は、依存性管理に関係するものに限られるが、Ivyの資料は、より包括的で、比較FAQという形でも存在しており、多数のサンプルおよびチュートリアルが含まれる。パブリックリポジトリを使用できず、Antベースのビルドシステムに多大な投資をしてきた企業にとっては、Ivyがエンタープライズリポジトリの作成をサポートすることや、Antと密接に統合できるということも、Maven 2の代わりに使用できる依存性管理ツールとしてIvyを考える要因となる。

原文はこちらです:http://www.infoq.com/news/2008/01/ivy_2.0

この記事に星をつける

おすすめ度
スタイル

BT