Maven Central リポジトリーで見つからない jar ファイルがあります。pom.xml
jar を追加して、ファイルに追加のタグを含めるだけで、他の開発者がその jar を使用できるようにしたいと考えています。jar を http webserver webfolder にアップロードするために必要な手順は何ですか? の横にどのファイルをアップロードすればよいcustom.jar
ですか? と並んで webfolder に存在する必要がある他のファイルは何custom.jar
ですか?
3 に答える
Web フォルダーを指す Web サーバーを既にセットアップしている場合、カスタム JAR をデプロイする簡単な方法はdeploy:deploy-file
Mojo を使用することです。Maven Deploy Pluginの使用法ページに記載されているとおり:
mojo は、
deploy:deploy-file
Maven によってビルドされていない成果物をデプロイするために主に使用されます。プロジェクトの開発チームは、アーティファクトの POM を提供する場合と提供しない場合があります。場合によっては、アーティファクトを内部のリモート リポジトリにデプロイすることもできます。deploy-file mojo は、これらすべてのユースケースをカバーする機能を提供し、オンザフライで POM を生成するための幅広い構成可能性を提供します。さらに、リポジトリが使用するレイアウトを指定できます。deploy-file mojo の完全な使用法ステートメントは、次のように記述できます。mvn deploy:deploy-file -Durl=file://C:\m2-repo \ -DrepositoryId=some.id \ -Dfile=your-artifact-1.0.jar \ [-DpomFile=your-pom.xml] \ [-DgroupId=org.some.group] \ [-DartifactId=your-artifact] \ [-Dversion=1.0] \ [-Dpackaging=jar] \ [-Dclassifier=test] \ [-DgeneratePom=true] \ [-DgeneratePom.description="My Project Description"] \ [-DrepositoryLayout=legacy] \ [-DuniqueVersion=false]
最初の 3 つのパラメーターのみが必須です (短いバージョン)。repositoryIdが何であるか疑問に思っている場合は、Mojo のドキュメントに次のように記載されています。
のセクションの
<id>
下にマップするサーバー IDほとんどの場合、このパラメーターは認証に必要です。デフォルト値は次のとおりです: リモートリポジトリ。<server>
settings.xml
つまり、これを使用する最も簡単な方法は、Web サーバーをホストしているマシンにカスタム JAR をコピーしfile://
、URL を指定するときにプロトコルを使用することです。追加のセットアップは必要ありません。リモートで展開する場合scp://
は、多くの場合、これが優先されるプロトコルです (他にもありますが、これはセットアップが非常に簡単です)。以下、scp を使用した例:
mvn deploy:deploy-file -DgroupId=my.group -DartifactId=myartifact -Dversion=1.0 \
-DgeneratePom=true \
-Dpackaging=jar \
-Dfile=custom.jar \
-DrepositoryId=some.id \
-Durl=scp://REMOTEMACHINE/PATH/TO/WEB_ROOT/maven2_repository
実際、Web サーバーを使用して独自の Maven リポジトリをホストすることはまったく問題ありませんが、初期化が少し面倒な場合があります。この問題を解決する 1 つの解決策は、Maven リポジトリだけでなく、Maven プロキシ ( Nexusなど) を使用することです。しかし、これはあなたの質問を超えています。
これに関するその他のリソースについては、次を確認してください (実装ソリューションが少し古くなっている場合でも、原則は有効です)。
できれば、ローカルの Maven リポジトリが必要です。これに対する 1 つのオプションは、Nexusです
または、自分だけで作業している場合は、オーバーヘッドを節約して、jar ファイルをマシンのリポジトリ (home/.m2/repository
適切なフォルダーの下) に置くことができます。
次のコマンドは、jar をローカル リポジトリにインストールするのに役立ちます。この後、jar を含むフォルダーをローカルからリモート リポジトリにアップロードできます。
mvn install:install-file \
-DgroupId=com.name \
-DartifactId=aaaa-bc \
-Dversion=1.0 \
-Dpackaging=jar \
-Dfile=aaaa-bc.jar \
-DcreateChecksum=true