149 votes

Le paquet Maven fonctionne mais la construction d'Intellij échoue

J'ai un projet JDK 1.7 avec une dépendance maven vers un jar local dans mon repo maven.

Je n'arrive pas à construire le projet à l'aide d'Intellij, avec l'erreur qu'un symbole ne peut être trouvé (le symbole est une classe qui importe des paquets du jar local).

Mais je peux construire le projet avec succès en utilisant 'mvn package'.

J'ai passé tellement de temps à chercher des solutions, des choses que j'ai déjà faites :

  • Cache invalidé
  • mvn clean install' la dépendance du jar local
  • Marqué pour "autoload snapshots" dans la configuration maven d'Intellij.
  • Réimplantation de maven dans Intellij
  • Syncornisé

Cette erreur m'est arrivée plusieurs fois auparavant, mais en général, il suffisait de fermer Intellij et/ou de faire une installation propre (mvn clean install) pour que cela fonctionne.

Aidez-moi, s'il vous plaît.

257voto

Rahul Jha Points 1137

Je sais que c'est en retard mais j'exécute mvn idea:idea résout le problème.

La commande re-génère les fichiers cruciaux d'IntelliJ IDEA : ipr , iml et iws et ainsi les réaligner avec votre pom.xml .

Documentation : https://maven.apache.org/plugins/maven-idea-plugin

Le plugin a été retiré mais fonctionne toujours (depuis le 05.06.2021) comme par magie :)

41voto

masoodg Points 461

Essayez de supprimer tous les .iml et votre POM. Puis copiez et collez à nouveau votre POM dans votre projet et ré-ouvrez-le et ré-importez-le.

28voto

Yarin Miran Points 325

J'ai découvert que mon fichier .iml et mon pom étaient en conflit et causaient le problème.

25voto

Ram Ghadiyaram Points 14932

Maven ReImport a fonctionné pour moi comme ci-dessous...

enter image description here

21voto

rrjp Points 311

J'ajoute quelques conseils supplémentaires puisque c'est la première chose qui est apparue dans la recherche lorsque j'ai eu des problèmes similaires (le projet se construit dans mvn, pas dans IntelliJ), au cas où cela pourrait aider quelqu'un d'autre.

Quand j'ai eu ce problème, la correction était différente sur Windows et sur Mac.

Sur Mac, je suis allé dans ItellijIDEA / Preferences / Build, Execution, Deployment / Build Tools / Maven / Maven Home Directory et je l'ai configuré pour utiliser mon Maven installé séparément plutôt que le Maven fourni. Tous les problèmes de construction ont disparu.

Sous Windows, je voyais des exceptions dans le idea.log liées à SSL et mon arbre de projet ne contenait que Java dans la branche External Libraries. En regardant sur d'autres sites, il semble qu'IntelliJ utilise son propre JDK privé au lieu de celui du système (même si dans mon cas, j'avais déjà installé exactement la même version du JDK). Mon JDK système a des certitudes installées dans le keystore pour le serveur Nexus de l'entreprise que le JDK privé d'IntelliJ n'avait pas, donc des exceptions étaient lancées lorsqu'il essayait d'obtenir des fichiers de Nexus. Pour cela, la solution a été de quitter IntelliJ, de définir une variable d'environnement appelée IDEA_JDK pour pointer vers le JDK que j'avais déjà installé et qui avait les certificats appropriés, et de redémarrer IntelliJ. Tous les problèmes de construction ont disparu.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X