コマンドラインからソースを使用してMavenアーティファクトをインストールする方法は?


92

ソースと一緒にMavenアーティファクトをインストールする方法は?

したがって、後でコードを表示するためにEclipseでプロジェクトを開く必要はありません。

編集: 私はこのコードをpom.xmlに追加できることを知っています

<plugin>
        <artifactId>maven-source-plugin</artifactId>
        <executions>
                <execution>
                        <id>attach-sources</id>
                        <phase>verify</phase>
                        <goals>
                                <goal>jar</goal>
                        </goals>
                </execution>
        </executions>
</plugin>

しかし、私はそれをコマンドラインから実行したいと思います(より普遍的にするため)


そして、それらのソースはどこに欲しいですか?
Sean Patrick Floyd、

回答:


156

依存関係のソースをダウンロードするには:

mvn eclipse:eclipse -DdownloadSources=true

ソースをインストールにアタッチするには:

mvn source:jar install

maven-source-pluginページでsource:jar-no-fork説明されているように、pomでゴールを使用することも推奨されます。


インストールされたスナップショットのソースは存在しません:(
IAdapter

58

シンプルで、ソースとJavaDocsを取得します。

mvn dependency:resolve -Dclassifier=javadoc
mvn dependency:resolve -Dclassifier=sources

2
@csgeek質問はあいまいに表現されており、さまざまな方法を解釈できます。Cmdはmvn srcとdocをダウンロードしてローカルにインストールするため、Eclipseから手動でマッピングする必要はありません。ローカルで構築されたjarにsrcをインストールする方法については、dogbaneの回答を参照してください。
Joseph Lust 2014年

1
はるかに優れてすっきりしたオプション。pom.xmlまたはEclipseの設定を個別に改ざんするよりも、これらの変更の頻度が高くなります。
Karthik Karuppannan 2015年

「mvn source:jar install」はpomやEclipse設定を変更しません。..m2リポジトリにローカルコードリポジトリのソースをインストールすることがMavenの目標です。(別のプロジェクトから参照したいスナップショットバージョンをgitでクローンした場合の例です。)依存関係の解決は、外部ソースまたはjavadoc jarをダウンロードするためのものです。
cslotty 2015

4

mvn source:jarMavenアーティファクトをインストールするには、installを使用してください。


1
これは機能していないようです。ソースjarのみを生成します。私はmvn clean install、オブジェクトとソースの両方のjarが私のm2にあるように組み合わせたいと思います。Android StudioからGradleを使用してアクセスしています。
TheRealChx101

-1

eclipseを使用すると、プロジェクトエクスプローラービューでプロジェクトを右クリックし、mavenメニュー項目をクリックして、[ソースのダウンロード]をクリックすると、非常に簡単です。


インストールされたスナップショットのソースが存在しません:(エラー24.02.11 10:23:23が表示されますCET:アーティファクトmy:project:1.2.18-SNAPSHOTのjava-sourceをダウンロードできません
IAdapter

さて、あなたはあなたの質問を明確にしました。私の答えはもう有効ではありません。
Gursel Koca、2011

どうして?mavenは自動的に物事を行うことです。jarが作成されていないため、アクセスできません。
IAdapter
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.