Question Force maven mise à jour


J'ai importé mon projet de travail sur un autre ordinateur afin qu'il commence à télécharger des dépendances.

Apparemment, pendant ce temps, ma connexion Internet s'est écrasée. Maintenant, je reçois:

Construire des erreurs pour les bandes dessinées; org.apache.maven.lifecycle.LifecycleExecutionException:   Impossible d'exécuter l'objectif sur le projet comicsTest: Impossible de résoudre les dépendances pour le projet comicsTest: comicsTest: war: 0.0.1-SNAPSHOT:   Les artefacts suivants n'ont pas pu être résolus:   org.springframework: spring-context: jar: 3.0.5.RELEASE,   org.hibernate: hibernate-entitymanager: jar: 3.6.0.Final,   org.hibernate: hibernate-core: pot: 3.6.0.Final,   org.hibernate: hibernate-commons-annotations: pot: 3.2.0.Final,   org.aspectj: aspectjweaver: pot: 1.6.8,   commons-lang: commons-lang: jar: 2.5,

mysql: mysql-connector-java: jar: 5.1.13: Echec du transfert de org.springframework: spring-context: jar: 3.0.5.RELEASE depuis http://repo1.maven.org/maven2 a été mis en cache dans le référentiel local, la résolution ne sera pas répétée jusqu'à ce que l'intervalle de mise à jour de central soit écoulé ou que les mises à jour soient forcées.

Erreur d'origine: Impossible de transférer l'artefact org.springframework: spring-context: jar: 3.0.5.RELEASE à partir du centre (http://repo1.maven.org/maven2): Aucune réponse reçue après 60000

Et je ne sais pas comment forcer maven à mettre à jour?


557
2018-01-15 19:01


origine


Réponses:


mvn clean install -U

-U signifie mettre à jour la force de instantané dépendances. Les dépendances de publication ne peuvent pas être mises à jour de cette manière.


1324
2018-03-14 08:06



-U semble forcer la mise à jour de toutes les dépendances. Si vous voulez mettre à jour une seule dépendance sans nettoyage ou -U, vous pouvez simplement la supprimer de votre dépôt local, puis la construire. L'exemple ci-dessous si pour mettre à jour slf4j-api 1.7.1-SNAPSHOT:

rm -rf ~/.m2/repository/org/slf4j/slf4j-api/1.7.1-SNAPSHOT
mvn compile

65
2018-03-11 10:31



Si votre référentiel local est en quelque sorte masqué pour des bogues de mise à jour par opposition aux instantanés (-U et --update-snapshots uniquement les instantanés de mise à jour), vous pouvez purger le dépôt local en utilisant ce qui suit:

 mvn dependency:purge-local-repository

Vous voudrez probablement ensuite nettoyer et installer à nouveau:

 mvn dependency:purge-local-repository clean install

Beaucoup plus d'informations disponibles à https://maven.apache.org/plugins/maven-dependency-plugin/examples/purging-local-repository.html


38
2017-11-26 02:46



Vous pouvez faire efficacement de Eclipse IDE. Bien sûr, si vous l'utilisez.

Project_Name->Maven->Update Project Configuration->Force Update of Snapshots/Releases

36
2018-02-06 09:28



Toutes les réponses ici n'ont pas fonctionné pour moi. J'ai utilisé la méthode du marteau:

find ~/.m2/ -name "*.lastUpdated" | xargs rm

Cela a réglé le problème :-)


35
2017-11-17 14:17



Juste au cas où quelqu'un veut seulement mettre à jour les dépendances de snapshots du projet et ne veut pas installer l'artefact:

mvn dependency:resolve -U

N'oubliez pas de réimporter les dépendances dans votre IDE. Dans IDEA vous devez faire un clic droit sur le fichier pom et choisir Maven -> Reimport


15
2017-07-05 09:01



Si vous n'êtes pas sûr de ce qu'il y a dans votre dépôt local, je recommande de déclencher une compilation avec l'option:

-Dmaven.repo.local=localrepo

De cette façon, vous vous assurerez de construire dans un environnement de salle blanche.


8
2018-05-24 15:42