Grâce à un archétype Dropwizard Maven, j'ai généré un exemple de projet Dropwizard Maven. Le pom.xml utilise notamment maven-source-plugin:
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
</plugin>
Quand j'exécute "installation propre" j'ai l'erreur suivante:
Le plugin org.Apache.maven.plugins: maven-source-plugin: 2.4 ou l'une de ses dépendances n'a pas pu être résolu: Impossible de lire le descripteur d'artefact pour org.Apache.maven.plugins: maven-source-plugin: jar: 2.4: Impossible de transférer l'artefact org.Apache.maven.plugins: maven-source-plugin: pom: 2.4 de/vers central ( http://repo.maven.Apache.org/maven2 ): Connexion refusée: connect - > [Aide 1]
La dépendance "maven-source-plugin" est stockée dans le référentiel Nexus de ma société. J'ai donc essayé l'ajout de la dépendance du plugin entre dépendances et/dependencies:
<dependencies>
...
<dependency>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.4</version>
</dependency>
</dependencies>
mais cela n'a pas corrigé le problème. J'ai aussi essayé d'ajouter la dépendance à l'appel du plugin:
<plugin>
<artifactId>maven-source-plugin</artifactId>
<version>2.4</version>
<executions>
<execution>
<id>attach-sources</id>
<goals>
<goal>jar</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.4</version>
</dependency>
</dependencies>
</plugin>
mais cela n'a pas fonctionné non plus
Deux situations possibles:
Votre entreprise utilise un proxy pour se connecter au référentiel Maven public. Puis demandez à quelqu'un de votre entreprise quelle est l'adresse IP du proxy puis insérez-la dans votre fichier settings.xml.
Votre entreprise possède son/leurs propres référentiels Maven (référentiel Nexus par exemple). Puis, demandez à un membre de votre entreprise quel est le contenu du référentiel Nexus dans votre fichier pom.xml ou dans votre fichier settings.xml. Voir Ajout de repo nexus maven à mon fichier pom.xml et https://maven.Apache.org/guides/mini/guide-multiple-repositories.html
Mettez à jour le fichier Apache-maven-3.5.0-bin\Apache-maven-3.5.0\conf\settings.xml.
Vérifiez votre proxy Internet Explorer -> Paramètres -> Internet Explorer -> Connexion -> Paramètres LAN
<proxy>
<id>optional</id>
<active>true</active>
<protocol>http</protocol>
<username>user</username>
<password>****</password>
<Host>proxy</Host>
<port>8080</port>
</proxy>
org.Apache.maven.plugins:maven-source-plugin
n'existe pas dans le référentiel http://repo.maven.Apache.org/maven2 .
Vous devez le télécharger depuis Maven central où il existe => maven-source-plugin
Vérifiez votre définition de pom ou votre fichier settings.xml.
I use intelliJ and finally I created my own settings.xml and added the following content structure to it. In my project's pom.xml, the nexus repositories were defined but for some reason it was always hitting the external Apache maven repo which is blocked in my company.
<settings>
<mirrors>
<id>nexus</id>
<url>nexusURL </url>
<mirrorOf>central</mirrorOf>
<mirror>
<profiles>
<profile>
<repositories>
<repository>
</settings>
je suppose donc que ce projet que vous menez dans votre Eclipse privé (non fourni par la société Eclipse où vous travaillez). Le même problème que j'ai résolu comme ci-dessous
solution rapide: vous avez un fichier .m2 -> créer une sauvegarde de settings.xml -> supprimer settings.xml -> redémarrer votre Eclipse.
Cela peut arriver, par exemple après un téléchargement interrompu, Maven a mis en cache une version endommagée du package référencé dans votre référentiel local.
Solution : Supprimez manuellement le dossier de ce plug-in du cache (c'est-à-dire votre référentiel local) et répétez maven install
.
Comment trouver le bon dossier? Les dossiers dans le référentiel Maven suivent la structure suivante:
<dependency>
<groupId>org.Apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.4</version>
</dependency>
est mis en cache dans ${USER_HOME}\.m2\repository\org\Apache\maven\plugins\maven-source-plugin\2.4