Dans mon projet, j'utilise un fichier JAR fourni par Maven. Mais ce que me donne Maven, c’est seulement ce pot - pas de javadocs ni de sources. Appuyer sur "Download Sources" n'a aucun effet: Eclipse ne trouve toujours pas les sources du fichier jar.
Qu'est-ce que cela dépend? Le référentiel doit-il fournir des sources automatiquement?
Peut-être ai-je besoin d'écrire quelque chose dans POM pour demander à Maven de télécharger des sources?
Mon pom actuel suit:
<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>
Pourquoi Maven ne dit pas que les commentaires sur le téléchargement de ses sources échouent?
L'exécution de mvn dependency:sources
obligera maven à télécharger toutes les sources de tous les fichiers JAR du projet, si ces sources sont disponibles (elles sont chargées dans le référentiel où l'artefact est hébergé). Si vous voulez télécharger javadoc, la commande est mvn dependency:resolve -Dclassifier=javadoc
Il est également possible de créer un profil dans votre fichier settings.xml et d'inclure les propriétés suivantes:
<properties>
<downloadSources>true</downloadSources>
<downloadJavadocs>true</downloadJavadocs>
</properties>
mvn dependency:sources
mvn dependency:resolve -Dclassifier=javadoc
s'il n'a pas de sources, il devrait indiquer quelque chose comme
[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
Il est préférable de ne pas compter sur le plug-in Eclipse car il est obsolète. L'utilisation des propriétés downloadSources
et downloadJavadocs
ne fonctionnait pas pour moi. La réponse ci-dessus concernant l’utilisation du plugin de dépendances Word. Cependant, vous souhaiterez peut-être télécharger automatiquement les sources et les javadocs. De plus, vous souhaiterez peut-être toujours créer un pot source et un pot javadoc. Mettez ceci dans le pom de votre projet. Si vous utilisez des modules, mettez votre pom parent.
<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>
Les fichiers jar source/javadoc n'ont peut-être pas été fournis et ne figurent pas dans le référentiel. Rien ne nécessite la présence d'un fichier jar source/javadoc.
prolonger @hovanessyan réponse.
Voici un profil de base permettant d'activer downloadSources et downloadJavadocs dans le fichier settings.xml de Maven. par exemple. l'identifiant du profil est 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>
Vous pouvez également télécharger les sources sous target/dependencies
en utilisant:
mvn -Dclassifier=sources dependency:copy-dependencies
Dans Eclipse, faites un clic droit sur votre projet puis Maven>Download Sources
à nouveau Maven>Download Javadoc