ライブラリ(jar)をリポジトリに入れる必要がありますか?
-
03-07-2019 - |
質問
Javaでサードパーティのライブラリを使用し始めたら、それらのjarをプロジェクトに追加します。 jarもリポジトリに追加しますか、それともローカルインストールのみを保持しますか。後者の場合、チームメンバー間でどのように同期して作業できるようになりますか?
ありがとう。
解決
いいえ、Mavenを使用する場合。それらをMavenリポジトリに配置します(まだ存在しない場合、ほとんどのオープンソースライブラリは既にパブリックMavenリポジトリにあります)。
はい、Antを使用している場合。
他のヒント
はい。プロジェクトをチェックアウトしてビルドするには、JDKとantがインストールされていることを除いて、クリーンシステムの開発者に必要なものはすべてリポジトリに追加する必要があります。
ANTを使用していて、MavenなしのMavenスタイルの依存関係管理が必要な場合は、 Ivy 。 Mavenリポジトリからダウンロードでき、Maven POMファイルを読み取ることもできます。
はい、サードパーティのライブラリはバージョン管理する必要があります。すべての人がそのライブラリの同じバージョンに対してコンパイルするようにするためです。このようにして、サードパーティライブラリの更新が発生した場合、1か所で変更するだけで、全員が新しいバージョンに更新されます。そうでなければ、有名な「"私のマシンでコンパイルします!" -syndrome」で簡単に終わる可能性があります。
Mavenを使用しない場合、サードパーティのjarのバージョンを必ずチェックインする必要があります。あなた(または、もっと重要なことに、後からやってくるメンテナンス開発者)は、リポジトリからアプリケーションのバージョンをプルし、コンパイルおよび実行時に必要なすべてのサードパーティjarのすべての正しいバージョンを持つことができるはずです。
また、メンテナンス開発者を支援するために、サードパーティのjarのバージョン管理履歴を維持する必要があります。リポジトリにチェックインするのが、これを行う最も簡単で効果的な方法です。
プロジェクトのビルドに必要なすべてのバージョン管理をお勧めします。 Mavenのようなビルドツールを使用している場合を除きます。
最近、SVNからJARを除外しています。プロジェクトにそれらを取り込み、依存関係を管理し、異なるバージョンを追跡するために使用する別個のリポジトリがあります。
これがMavenの誕生です。私はそれをうまく使う方法を学ばなければなりませんが、それまでは自分のJARリポジトリを保持しています。