私たちは数ヶ月間Ivyを使用していて、オフィス内のWebサーバー上に私たち自身のホストした "Ivy Repo"を持っています。すべてのプロジェクトは、依存関係を解決するためにこのリポジトリに移動するように設定されています。Ivy:ローカルでのJARの解決と公開
多くのプロジェクトで使用されている「コモンズ」タイプのJARがいくつかあります。このため、我々は唯一の1つのレポを持っているので、我々は次のような状況から来る醜いオーバーヘッドをたくさん見つけている:
- 開発者がオンに依存する(プロジェクト1に機能を追加するためのタスクを与えられ、プロジェクト1の開発の過程で、開発者は、彼/彼女が
- 共通jarファイルの変更が
- 共通のjarは、コードレビューとノーマルを通過しなければならない作られています一般的なjarファイルに変更を加える必要が実現共通のjar)
- コードプロモーション
- ビルドマスターが新しい共通jarを公開
- プロジェクト1は、今では一般的なjarファイルはこれが私たちのチームのためにとんでもないと苦痛になってきている
更新された開発を再開することができます。
私にとって、明らかな解決策は、開発者が(ファイルシステムへの、またはファイルシステムからの)ローカルでの公開/解決を可能にする、各プロジェクトにantターゲットを提供することです。そうすることで、コモンが公開されるのを待つ間に、コモンジャーを日曜日に9つの方法で破ることができますが、2 - 4日間を失うことはありません。こうすることで、開発者はProject 1とCommonの両方をローカルで変更し、コードは一度にすべてのプロモーションプロセスを実行します。
私はこれがアイビーで可能だと知っていますが、私はとても新しいので、どこから始めるべきか分からないでしょう。
現在、すべてのプロジェクトにグローバルivy.settings
ファイルが使用されています。設定ファイルでは、内部に1つのURLリゾルバがあり、 "ivy repo"に接続するchain resolveを使用します。
私は次が必要になる唯一の変更ですが、私は100%確実ではないよ信じる:
我々は前に、ローカルファイルシステムのリゾルバ を追加する必要がありますivy.settings
で
- urlリゾルバが呼び出されます。私たちはツタのレポ(Webサーバ)に移動する前に依存関係のためのローカルファイルシステムをチェックし、このよう
- を設定し、各プロジェクトの
ivy.xml
何とかそれは - を公開し、ローカルキャッシュはAntがその
publish-locally
目標を持つように構築する微調整できるオプションとは(1)常に(2)ビルドオプション(ターゲット)としてローカルに公開する、Webサーバーに見る前に依存関係をローカルで探す:
上記のオプションは、私がこれらの変更は、私たちができるようになりますと信じてい行使する。
これが当てはまらない場合や、手順が不足している場合は、お助言ください!そうでなければ、Ivyのドキュメントからファイルシステムリゾルバを追加する方法を考え出すことができますが、publish-locally
ターゲットを動作させる方法がわかりません。何か案は?前もって感謝します!