Correction avant IntelliJ 14
Fichier [menu] -> Paramètres -> maven -> import et décochez "utiliser maven3 pour importer le projet"
réf : http://youtrack.jetbrains.com/issue/IDEA-98425 (qui peut avoir quelques autres idées aussi)
Corriger IntelliJ 15+
J'ai rencontré ce problème à nouveau, avec IntelliJ 15 cette fois, qui ne dispose plus de l'option "utiliser maven3 pour importer". La cause est que parfois IntelliJ "n'analyse pas correctement les dépendances maven" et s'il n'arrive pas à analyser correctement l'une d'entre elles, il abandonne sur tous d'entre eux, apparemment. Vous pouvez savoir si c'est le cas en ouvrant la fenêtre d'outils des projets Maven (menu Affichage -> Fenêtres d'outils -> Projets Maven). Développez ensuite l'un de vos projets maven et ses dépendances. Si les dépendances sont toutes soulignées en rouge, "Houston, nous avons un problème".
Vous pouvez en fait voir le réel en passant la souris sur le nom du projet lui-même.
Dans mon cas, le message "Problems : Aucune version disponible pour XXX" ou "Impossible de lire le descripteur de l'artefact org.xy.z" réf : https://youtrack.jetbrains.com/issue/IDEA-128846 et https://youtrack.jetbrains.com/issue/IDEA-152555
Il semble que dans ce cas, j'avais affaire à un jar qui n'avait pas de fichier pom associé (dans notre repo maven nexus, et aussi dans mon dépôt local). Si c'est également votre problème, une solution de contournement : si vous n'avez pas réellement besoin d'utiliser les classes de ce jar dans votre propre code (par exemple une dépendance maven transitive uniquement), vous pouvez en fait vous en sortir en le mettant en commentaire dans le pom (temporairement), en rechargeant le projet maven, puis en le décommentant. D'une certaine manière, après ce point, IntelliJ "se souvient" de ses anciennes dépendances de travail. L'ajout temporaire d'une exclusion transitive maven peut également être utile, si vous rencontrez ce problème à partir d'une chaîne de dépendances transitive."
Une autre chose qui pourrait aider est d'utiliser une "version plus récente" de maven que la version 3.0.5 fournie. Afin de le configurer pour qu'il soit utilisé par défaut, fermez toutes vos fenêtres intellij, puis ouvrez les préférences -> construction, exécution et déploiement -> outils de construction -> maven, et changez le répertoire d'origine de maven, il devrait être indiqué "Pour le projet par défaut" en haut lorsque vous l'ajustez, bien que vous puissiez l'ajuster pour un projet particulier aussi bien, tant que vous "réimportez" après l'avoir ajusté.
Effacer les caches
Suppression de vos dossiers de cache intellij (Windows : HOMEPATH/.{IntellijIdea,IdeaC}XXX linux ~/.IdeaIC15) et/ou désinstallation et réinstallation d'IntelliJ lui-même. Cela peut également être fait en allant dans Fichier [menu] -> Invalidate Caches / Restart...
. Cliquez sur invalidate and restart
. Cela réindexera l'ensemble de votre projet et résoudra de nombreux problèmes difficiles à tracer avec IntelliJ.
0 votes
Que voulez-vous dire par "automatiquement" ? Vous devez déclarer toutes vos dépendances dans votre POM comme pour tout projet Maven normal. IntelliJ ou un autre IDE les téléchargera simplement si elles y sont déclarées...
9 votes
Il télécharge toutes les dépendances mais il ne semble pas les ajouter toutes au classpath...
3 votes
Et un autre problème est qu'intelliJ ne me montre les erreurs soulignées en rouge que lorsque j'ouvre ce fichier java...
4 votes
Cette ligne rouge apparaît notamment lorsque vous avez une dépendance SNAPSHOT avec un classificateur et qu'il existe une version plus récente de la dépendance sans le classificateur. Ceci est parfaitement légal dans Maven, mais IntelliJ s'embrouille en essayant de trouver le chemin vers le fichier physique dans votre dépôt Maven local.
4 votes
Pour info, cela peut encore arriver dans la 15.0.2. Cela vient de m'arriver. J'ai dû effacer mon fichier .iml et mon dossier .idea et réimporter. C'est incroyablement frustrant car j'ai passé 2 heures à me battre contre ce problème, et j'ai finalement perdu toutes mes configurations d'exécution soigneusement élaborées.
3 votes
@KevinPauli pas besoin de supprimer les fichiers du projet IDEA pour cela, vous pouvez simplement "Réimporter tous les projets Maven" sous l'onglet "Projets Maven" pour une réimportation manuelle.
1 votes
La plupart du temps, la sauvegarde et l'explosion de votre utilisateur Dossier .m2 ou percer dans les paquets incriminés et supprimer/renommer et faire un
mvn clean install
fait l'affaire.0 votes
@KevinPauli J'ai dû vivre la même chose.
0 votes
A la fin, c'était une erreur dans un pom parent.
1 votes
J'aime la façon dont Eclipse télécharge les dépendances maven, en faisant un clic droit sur pom.xml et en forçant la mise à jour. Je me demande pourquoi IDEA a rendu cela difficile
0 votes
J'ai eu le même problème après avoir cloné le dépôt deeplearning4j à partir de github, mon contournement a été de fermer intellij -> supprimer l'ensemble du dépôt de deeplearning4j.
.idea
-> rouvrir le projet -> Construire -> Construire le projet0 votes
clic droit sur le projet/module > Maven (en bas) > Recharger le projet