2017-02-21 13 views
1

残念ながら、私のプロジェクトにはMavenリポジトリに公開されたことのない外部依存関係があります。私が得ることができる唯一の方法はgithubから直接ダウンロードすることです(バイナリをgithubにプッシュしました)。指定されたURLからJAR依存関係を取得するようにmavenに指示します

jarを手動でダウンロードして、自分のコードリポジトリ(git)にコミット/プッシュすることです。このプロジェクトを自分のバイナリリポジトリにアクセスできない外部の貢献者と共有するので、このアーティファクトを私のローカルバイナリリポジトリに手動で展開するのに役立たないでしょう。

これを処理するには、mavenにもっと良い方法があるのだろうか? (アーティファクトを私のレポやパブリックリポジトリにアップロードすることはできません)。

私は知っているnpmは、URLからいくつかの依存関係を得ることができます。 Mavenもそれをサポートしていますか?

+1

なぜjarをダウンロードしてレポにコミットするのは悪い方法ですか?それにはいくつかの利点があります。アーティファクトがMaven座標を取得し、常に利用可能であり、「魔法のように」変化しません。あなたはおそらくこれを非常に頻繁にする必要はありません。もう一つの方法は、gitリポジトリをチェックアウトして、自分でアーティファクトをビルドして展開することです。 –

+0

@JFMeierは、彼が言及した理由のため、これらのような人工物のために常に言及したことをします。私たちは代理できる公開Mavenリポジトリにないサードパーティのアーティファクトをホストするために、Nexusで別のリポジトリを作成しました。 – user944849

+0

@JfMeier - 私は十分に明確ではありませんでした。 jarをソースリポジトリ(git)にコミットするのは悪い考えです。もちろん、それをローカルのプライベートMavenリポジトリ(Nexus/Artifactory)にデプロイするのは良い考えですが、この場合は - 私はこのプロジェクトを外部の貢献者と共有しているので助けにならないでしょう。私は自分の投稿を編集してより明確になるようにしました。ありがとう! –

答えて

0

AFAIKこれを処理する良い方法はありません。あなたは可能性があります

  • jarをダウンロードし、ローカルのMavenリポジトリにインストールするスクリプトを作成します。このスクリプトは、コードリポジトリを通じて共有できます。
  • Mavenビルドプロセスにアーティファクトをダウンロードしてインストールする(Mavenプラグインを作成するかantrunプラグインを使用する)
  • チーム内の誰もがアクセスできるクラウドにネクサスを設定します。
関連する問題