web-dev-qa-db-ja.com

Mavenでjarのソースをダウンロードする方法は?

私のプロジェクトでは、Mavenを介して提供されるJARファイルを使用しています。しかし、Mavenが提供するのはこのjarのみです。javadocもソースもありません。 「ソースのダウンロード」を押しても効果はありません。Eclipseはまだjarのソースを見つけません。

これは何に依存していますか?リポジトリはソースを自動的に提供する必要がありますか?

ソースをダウンロードするようにMavenに指示するために、POMで何かを書く必要があるかもしれませんか?

私の現在のポンは次のとおりです。

<repositories>
    <repository>
        <id>xuggle repo</id>
        <url>http://xuggle.googlecode.com/svn/trunk/repo/share/Java/</url>
    </repository>
</repositories>

<dependencies>

    <dependency>
        <groupId>xuggle</groupId>
        <artifactId>xuggle-xuggler</artifactId>
        <version>5.3</version>
        <type>rar</type>
    </dependency>

</dependencies>

Mavenがソースダウンロードの失敗についてコメントを表示しないのはなぜですか?

56
Suzan Cioc

mvn dependency:sourcesは、ソースが使用可能な場合(アーティファクトがホストされているリポジトリにアップロードされている場合)、プロジェクト内のすべてのjarのすべてのソースを強制的にダウンロードします。 javadocをダウンロードする場合、コマンドはmvn dependency:resolve -Dclassifier=javadoc

Settings.xmlファイルにプロファイルを作成し、次のプロパティを含めることもできます。

<properties>
  <downloadSources>true</downloadSources>
  <downloadJavadocs>true</downloadJavadocs>
</properties>
87
hovanessyan
mvn dependency:sources
mvn dependency:resolve -Dclassifier=javadoc

ソースがない場合は、次のように言う必要があります

[INFO] The following files have NOT been resolved:
[INFO]    com.Oracle:ojdbc6:Java-source:sources:12.1.0.1
[INFO]    javax:javaee-api:Java-source:sources:6.0
44
Kalpesh Soni

非推奨なので、Eclipseプラグインに依存しないことをお勧めします。 downloadSourcesおよびdownloadJavadocsプロパティを使用しても機能しませんでした。依存関係プラグインWordの使用に関する上記の回答。ただし、ソースとjavadocsを自動的にダウンロードすることもできます。さらに、常にソースjarとjavadoc jarを作成することもできます。これをプロジェクトのPOMに入れます。モジュールを使用する場合は、親pomに入れます。

<build>
    <plugins>
        <!-- download sources and javadoc -->
        <plugin>
            <artifactId>maven-dependency-plugin</artifactId>
            <version>2.10</version>
            <executions>
                <execution>
                    <id>download-sources</id>
                    <goals>
                        <goal>sources</goal>
                    </goals>
                </execution>
                <execution>
                    <id>download-javadoc</id>
                    <configuration>
                        <classifier>javadoc</classifier>
                    </configuration>
                    <goals>
                        <goal>resolve</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <!-- Always create javadoc jar. -->
        <plugin>
            <artifactId>maven-javadoc-plugin</artifactId>
            <version>2.10.4</version>
            <executions>
                <execution>
                    <id>attach-javadoc</id>
                    <goals>
                        <goal>jar</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
        <!-- Always create source jar. -->
        <plugin>
            <artifactId>maven-source-plugin</artifactId>
            <version>2.10</version>
            <executions>
                <execution>
                    <id>attach-sources</id>
                    <goals>
                        <goal>jar</goal>
                        <goal>test-jar</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>
9
Douglass Parker

Source/javadoc jarは提供されていない可能性があり、リポジトリにはありません。source/ javadoc jarの存在を必要とするものは何もありません。

4
kevinpeterson

次を使用して、target/dependenciesの下にソースをダウンロードすることもできます。

mvn -Dclassifier=sources dependency:copy-dependencies
4
Marinos An

@hovanessyanの回答を拡張します。

Mavenのsettings.xmlでdownloadSourcesおよびdownloadJavadocsを有効にするための基本的なプロファイルは次のようになります。例えばプロファイルIDはdownloadSourcesです

<!-- add the profile under profiles section -->

    <profile>
        <id>downloadSources</id>
        <properties>
            <downloadSources>true</downloadSources>
            <downloadJavadocs>true</downloadJavadocs>           
        </properties>
    </profile>

<!-- activate the profile under activeProfiles section -->

  <activeProfiles>
    <activeProfile>downloadSources</activeProfile>
  </activeProfiles>
3
RaamEE

Eclipseで、プロジェクトを右クリックしてからMaven>Download Sourcesもう一度Maven>Download Javadoc

2
Alireza Fattahi