Gradle とそのリポジトリ サポート機能について調べています。ドキュメントは、Ivy または Maven リポジトリをサポートしていることを示しています。これが意味することは、私には完全には明らかではありません。
Maven リポジトリの場合、私の理解はより完全なものになると思います。ビルド時に、Nexus や Artifactory などのローカル リポジトリは、MavenCentral から必要なパブリック依存関係をキャッシュします。公開のために、Gradle はプロジェクトの POM.xml を生成し、プライベート アーティファクトをローカル リポジトリに公開できます。私の理解は正しいですか?公開されている MavenCentral POM の誤りを修正するとともに、使用されている公開依存関係を制御したいと考えています。
Ivy については、もう少し混乱しています。1つには、共有 Ivy リポジトリはどのようなものでしょうか? SSH、SFTP、HTTP などでホストされている単なるリモート ディレクトリ ツリーですか? これは Windows と Unix が混在する環境で動作しますか? Gradle はパブリック依存関係とビルドされたアーティファクトを共有 Ivy リポジトリにどのように移動しますか? ジェンキンスもこのステップを実行できますか? 新しいパブリック依存関係が定義され、それらを共有 Ivy リポジトリに移動する必要がある場合、追加のビルド手順が必要ですか? それともシームレスに行われますか?
最後に、2 つのモデルの機能は基本的に同じであると仮定します。Jenkinsビルドマシンと一緒に維持するソリューションは何ですか?