2

この質問を十分に具体的に保つことができれば幸いです。現在、私のチームは、巨大なプロジェクト(150以上の依存関係〜300mb)の依存関係を管理するための最良の方法について議論しています。

2つの主な問題があります

  • すべての開発者の依存関係を同じに保つので、同じファイルに対してコンパイルします
  • プロジェクト(コンパイル後)が同じ依存関係に対してコンパイルされていることを確認します

提案されている2つのアイデアは、BirJar(1つのファイル内のすべての依存関係)を使用し、それにバージョン番号を追加し、共有フォルダーを使用して、すべてのマシンを同じ場所に向けることです。

または、コンパイル時にすべての依存関係(jar、jar、jar)をjarに含めて、「依存関係がない」プロジェクトを作成します。

誰かがIvyの内部バージョンをセットアップし、そこから依存関係を引き出すためにすべてのコードを指すことにも言及しました。

大規模な依存関係管理に関するベストプラクティスは何ですか?

4

2 に答える 2

9

Mavenとその依存関係管理を使用してみませんか?

各依存関係、その特定のバージョン、およびそのスコープ(コンパイル時、テスト用、デプロイメント用など)を指定できます。これらを指定するマスターpom.xml(構成ファイル)を提供でき、開発者は必要に応じて(たとえば、新しいバージョンを評価するために)オーバーライドできます。

たとえば、必要な特定のjarとそのバージョン(または範囲)の詳細を示すpom.xmlを指定します。依存するjarファイルは自動的に決定/ダウンロードされます。これらのjarのどちらをコンパイルとデプロイなどに使用するかを指定できます。Nexusなどの集中型リポジトリを使用する場合は、アーティファクト(ライブラリなど)をビルドしてNexusにデプロイすると、他のユーザーが利用できるようになります。開発者は、サードパーティのライブラリなどとまったく同じ方法でダウンロードします。

于 2012-09-06T14:03:50.483 に答える
0

Mavenプロジェクト構造が気に入らない/従いたくない場合...

Ant を既に使用している場合は、依存関係の管理に Ivy を使用することをお勧めします。

http://ant.apache.org/ivy/

依存関係を操作するための Ant タスクの豊富なセットを提供します。

from : Ant 依存関係管理

于 2012-09-06T14:07:09.550 に答える