最近、Java 用のサードパーティ ライブラリを作成しました。現在、私は Github と私が所有する Web サイトを介してライブラリを配布しており、そこで JAR ファイルをダウンロードできるようにしています。開発者が Gradle と Maven (およびおそらく他のビルド自動化ツール) を使用して、サードパーティのライブラリをプロジェクトに簡単に含めることができるようにしたいと考えています。
Maven、Gradle、Bintray、JCenter、MavenCentral、Ivy などは初めてですが、Ant、Java、および Linux の経験はあります。
上記のツール/プラットフォームを使用してサードパーティのライブラリを公開する方法を学ぼうとしましたが、混乱してしまいました。
- 私が読んだことによると、Gradle、Maven、および Ant は競合するテクノロジーです。では、実際のユースケース シナリオのコンテキストで、なぜ Gradle が Maven とそれほど絡み合っているように見えるのでしょうか?
- Bintray は、ソフトウェアの公開および配布プラットフォームとしての地位を宣伝しています。では、JCenter を他の Bintray とは異なるものとして作成する必要があったのはなぜでしょうか? JCenter にできて、Bintray にできないことは何ですか?
- Bintray でテスト パッケージとバージョンを作成し、そのバージョンに JAR ファイルをアップロードしました。その JAR ファイルを依存関係として Java プロジェクトに含めることができる Gradle スクリプトを作成することは可能ですか? または、パッケージを JCenter と「リンク」する必要がありますか?
基本的に、上記のすべてのテクノロジーで何が起こっているのか誰か教えてもらえますか? この投稿の疑問符で終わるすべての文に答える義務があるとは思わないでください。これらの質問は、主に私の現在の理解レベルを示すことを目的としています。テクノロジーがどのように連携するかについての簡単な概要は素晴らしいものであり、可能であれば、この投稿のタイトルにある質問への回答です.