2012-01-06 18 views
3

1つのEXEファイルをデプロイしようとしていますが、mavenコマンドラインを使用してSonatype NexusにZIPソースファイルがあります。ファイルはSNAPSHOTとして展開する必要があります。MavenのコマンドラインからSNAPSHOTのアーティファクトとソースをNexusにデプロイ

ここで説明するのmaven 2.2.1およびコマンドを使用して
-testXYZ.exe and source file 
-testXYZ.zip 

だから、私は2つのファイル持っているためにMaven 2.2.1

mvn deploy:deploy-file -Durl=file:///home/me/m2-repo \ 
         -DrepositoryId=some.repo.id \ 
         -Dfile=./path/to/artifact-name-1.0.jar \ 
         -DpomFile=./path/to/pom.xml \ 
         -Dsources=./path/to/artifact-name-1.0-sources.jar \ 
         -Djavadoc=./path/to/artifact-name-1.0-javadoc.jar 

を私は、EXEを展開することができますが、ソースを展開することはできませんdeploy-plugin v2.5を使用しており、このコマンドはv2.7までサポートされていません。 新しいバージョンのMavenを使用することは許されませんので、私は別の方法を試してみます。

この2つの後続コマンドを使用して、これらの2つの成果物を導入できますが、ソースはnexusからダウンロードできません。

call mvn deploy:deploy-file -DgroupId=com.xyz -DartifactId=testXYZ -Dversion=1.1.116-SNAPSHOT -Dpackaging=zip -Dfile=testXYZ.zip -Dclassifier=sources -Durl=http://build:8081/nexus/content/repositories/snapshots -DrepositoryId=nexus 
call mvn deploy:deploy-file -DgroupId=com.xyz -DartifactId=testXYZ -Dversion=1.1.116-SNAPSHOT -Dpackaging=exe -Dfile=testXYZ.exe -Durl=http://build:8081/nexus/content/repositories/snapshots -DrepositoryId=nexus 

デプロイ後、testXYZを検索し、アーティファクトソースのダウンロードリンクをクリックします。 ネクサスは言う:

com.xyz:testXYZ:1.1.116-SNAPSHOT:c=sources:e=jar "項目はパス に見つかりません ""!"

問題は、Mavenのは、これらの成果物をアップロードする方法です:

Line form log file while source is uploading: 
Uploaded: http://build:8081/nexus/content/repositories/snapshots/com/xyz/testXYZ/1.1.116-SNAPSHOT/testXYZ-1.1.116-20120106.111705-1-sources.zip 
Line form log file while Main artifact is uploading: 
Uploaded: http://build:8081/nexus/content/repositories/snapshots/com/xyz/testXYZ/1.1.116-SNAPSHOT/testXYZ-1.1.116-20120106.111709-2.exe 

お知らせ111705から1と111705から2。 Nexusが正しいリンクを生成できるようにするには、最後の番号が同じでなければなりません。

Deploying an artifact, its sources and javadoc using maven's deploy:deploy-file plugin

を、ここで:

このアプローチは、ここで記載されて

http://maven.apache.org/plugins/maven-install-plugin/examples/installing-secondary-artifacts.html

それは(例えば1.1.116用)固定バージョンのために働いて、ではないためスナップショット。

固定バージョンが使用されている場合は、ExeファイルとZipファイルをNexus(jarファイルなど)にデプロイできます。

だから、質問です: はSonatypeネクサスへのコマンドラインからのアーティファクトとソースのスナップショットを展開すると、これらのファイルは、ソースと成果物のリンクをクリックすることでダウンロードすることができることを確認する方法はありますか?

注:タイムスタンプの接尾辞を無効にすると、これは機能しますが、これをしたくありません。

-DuniqueVersion=false 

おかげで、

マルジャン

+0

http://stackoverflow.com/questions/4725668/how-to-deploy-snapshot-with-sources-and-javadocをご覧ください。 – Noremac

答えて

0

私はこの問題のための部分的な解決策を見つけました。私はこのようなのmaven-展開 - プラグインの特定のバージョンを呼び出すことができます。この方法で

mvn org.apache.maven.plugins:maven-deploy-plugin:2.7:deploy-file... 

を、アーティファクトとソースのスナップショットは、ダウンロードの問題を回避ネクサスに展開することができますが、それは

のように振る舞います - DuniqueVersion = false

がまだ存在します。

関連する問題