L'idée Intellij ne peut rien résoudre dans maven


130

Je suis nouveau sur Intellij Idea, je viens d'importer un projet avec pom.xml , mais l'ide n'a rien résolu dans les dépendances maven.

Tout ce qui est défini dans les pom.xmldépendances lors de l'importation dans le code génère une erreurcannot resolve symbol xxxxx

Mais mvn installfonctionnera, j'essaie d' importer les dépendances dans Project Settings/Librariesdans les .jarfichiers, il fonctionne, mais je ne pouvais les bibliothèques de résoudre ide définies dans pom.xml? je ne veux pas faire ça à chaque fois.

Informations supplémentaires:

Version IDEA: 12.0.3, OS: Windows 7, la réimportation ne fonctionne pas, version maven: 3.0.4, les dépendances maven n'existent pas sous les bibliothèques externes.

il n'y a pas d'exceptions dans idea.log ...


Version IDEA? Des exceptions liées dans idea.log ? Version Maven? Quel OS utilisez-vous? Le bouton Réimporter fonctionne-t-il dans la Maven Projectsfenêtre d'outils? Voyez-vous les dépendances sous le External Librariesnœud dans le Project View?
CrazyCoder

Version IDEA: 12.0.3, OS: Windows 7, la réimportation ne fonctionne pas, version maven: 3.0.4, les dépendances maven n'existent pas sous les bibliothèques externes.
Rafale du

il n'y a pas d'exceptions dans idea.log ...
Burst

Essayez IDEA 12.1 , activez Maven 3 dans Settings| Maven| Importing, la configuration du réseau peut également l'affecter .
CrazyCoder

merci pour votre réponse, cela fonctionne maintenant, mais il y a toujours un problème: les dépendances qui scope = system ne seront pas déployées lors de l'exécution dans tomcat.
Rafale du

Réponses:


118

Dans IntelliJ 12.1.4, je suis passé par Settings --> Maven --> Importinget je me suis assuré que ce qui suit était sélectionné:

  1. Importer automatiquement des projets Maven
  2. Créer des modules IDEA pour les projets d'agrégation
  3. Garder la source ...
  4. Exclure le répertoire de construction ...
  5. Utiliser la sortie Maven ...
  6. Dossiers de souces générés: "détecter automatiquement"
  7. Phase à venir: "processus-ressources"
  8. Télécharger automatiquement: "sources" et "documentation"
  9. Utilisez Maven3 pour importer un projet
    • Options de VM pour l'importateur: -Xmx512m

Cela m'a fait passer d'un grand nombre de déclarations d'importation non résolues à la résolution de tout. Je pense que la clé ici était d'utiliser Maven3 pour importer le projet ... J'espère que cela aide.


15
C'est bien, mais j'ai également dû charger le projet en tant que projet Maven - choisissez Fichier | Ouvrez, votre pom.xml et attendez.
MaKri

3
Cette réponse et le premier commentaire ont résolu mon problème. Merci les gars!
miken.mkndev

J'avais besoin d'augmenter encore plus la mémoire pour l'importateur et j'ai finalement opté pour -Xmx4096m (c'est un gros projet). Ceci est différent des paramètres de mémoire dans idea.vmoptions!
Yasammez

Merci, j'ai eu un problème où Maven 3.0.5 (fourni) n'entraînerait aucune importation de dépendances maven, mais la mise à jour pour utiliser 3.3.9 permettait à toutes les dépendances d'être importées correctement.
Matthew Buckett

Je ne sais pas pourquoi IDEA n'a pas de menu contextuel similaire à Eclipse pour créer un projet basé sur maven. Avec la version 2017.2, vous devez faire Fichier> Autres paramètres> Paramètres par défaut> rechercher maven dans le champ de recherche. IDEA a vraiment un mauvais UX par rapport à Eclipse
vikramvi

116

J'ai rencontré ce problème, l'idée ne peut pas télécharger tous les packages jar dépendants à l'aide de maven, j'ai juste essayé les opérations suivantes:

 mvn -U idea:idea

puis tous les packages jar dépendants sont téléchargés depuis le référentiel maven


4
Remarque: ce plugin est retiré. Il n'est plus maintenu. maven.apache.org/plugins/maven-idea-plugin
petertc

6
C'est la seule solution de cette page qui fonctionne pour moi aussi !!
nahab

Je suis confronté à ce problème depuis longtemps .. et cela m'a sauvé la journée (/ jours) ... Merci beaucoup !!
codeMan

Cela m'aide. Je vous remercie.
Anna Kaygorodova

3
Quelqu'un peut-il expliquer pourquoi cela fonctionne? C'était la seule bonne solution pour moi malgré le plugin retiré, en décembre 2017.
Z3d4s

34

J'obtenais également cette erreur car le projet importait les dossiers principaux et de test en tant que modules. Cliquez sur Projet -> Appuyez sur F4 -> Dans les paramètres du module, supprimez les dossiers principaux et de test et refaites le projet. Le problème sera résolu.


1
Cela s'est également avéré être mon problème après avoir importé un projet Maven existant dans IntelliJ 14.0.3 et sélectionné toutes les options par défaut pendant le processus d'importation.
Nate R.

Après des heures de recherche, cela a fait l'affaire pour moi. Bénir!
SourceVisor

Cela a fonctionné pour moi aussi! Est-ce que quelqu'un sait pourquoi cela rompt la résolution?
dmi_

Cela a fonctionné pour moi, c'est le plus simple que j'ai essayé .. Merci!
rrw

1
+1 ... cela a totalement fait l'affaire pour moi. Tout semblait être bien configuré, pom.xml était lu, les bibliothèques étaient présentes, mais il fallait le faire pour que les erreurs disparaissent.
davesbrain

34

J'ai rencontré ce problème lors de l'utilisation de l'instance Maven 3 fournie par IntelliJ 14.

J'ai opté pour ma propre instance Maven locale, via:

Settings -> Build, Execution, Deployment -> Build Tools -> Maven -> Maven Home Directory

Ensuite, j'ai ajouté le chemin d'accès à mon instance installée localement.entrez la description de l'image ici

Cela a fait apparaître les dépendances par magie.

entrez la description de l'image ici


1
Incroyable. Celui-ci a fonctionné pour moi, après beaucoup de maux de tête. J'ai téléchargé maven 3.5 sur Internet. Merci beaucoup !!
sumanth232

sauvé ma journée !! Merci Conor
Dota2

Wow, c'était comme si quelque chose s'était dégagé à l'intérieur de l'idée après avoir fait cette astuce. Merci Connor.
Bnrdo

Décidément, je n'aurais jamais pensé à ne pas avoir à utiliser la version fournie de maven et à utiliser la mienne. Cela a totalement fonctionné après avoir passé quelques heures à essayer toutes sortes de choses.
zen

Super !! Cela a fonctionné comme un jeu d'enfant. Merci beaucoup pour l'aide.
Sanjeev

10

J'ai essayé plusieurs options, mais celle-ci a finalement résolu mon problème. J'ai réimporté le projet en suivant ces étapes dans IntelliJ:

  1. Fichier -> Nouveau -> Projet à partir de référentiels existants
  2. Choisissez votre projet dans 'Sélectionner un fichier ou un répertoire à importer'

  3. Dans l'écran suivant, choisissez «Importer un projet à partir d'un modèle externe», puis choisissez «Maven.

  4. À l'étape suivante, cochez la case ' Importer automatiquement des projets Maven ', (cela a résolu mon problème)
  5. Terminez en choisissant des profils si nécessaire

Pour moi, la réimportation de projets maven n'a pas résolu le problème d'un projet existant.


5

Pour moi le problème ce que je devais cocher la case "Importer automatiquement les projets maven" sous Paramètres> Maven> Importer


Merci! Still est une solution à jour pour Intellij IDEA 2016. L'importation Maven a permis d'ouvrir un projet maven existant de manière transparente contrairement à une ouverture de projet qui a causé plusieurs problèmes de dépendance!
Exterminator13

5

Je viens de rencontrer le même problème après la mise à jour d'IntelliJ. Mon correctif: clic droit sur le projet, puis maven -> réimporter.


5
  1. Fermer IntelliJ
  2. Ouvrez le même projet
  3. Lorsque le projet se charge, en bas à droite, vous pouvez voir un pop-up disant non-managed pom.xml file found, si vous cliquez dessus, un nouveau pop-up apparaîtra, disant add as maven project, cliquez dessus, et c'est fait.

4

J'obtenais cette erreur car mon projet n'était pas configuré correctement. Il avait importé des dossiers principaux et de test en tant que modules. Lorsque j'ai supprimé les 2 modules (mais les ai conservés comme dossiers source et test), mon code a commencé à se compiler correctement.


4

J'ai eu le même problème en tant qu'auteur!

Pour résoudre mon problème, j'ai dû ajouter le plugin d'intégration Maven: Fichier | Paramètres | Plugins

Comme ça:

Plugin d'intégration Maven

Après cela, Intellij a téléchargé toutes les dépendances à partir du fichier pom.xml.

Maintenant, si je veux créer un projet basé sur le modèle maven, je choisis simplement Ouvrir dans la première fenêtre Intellij et choisir le fichier pom.xml:

entrez la description de l'image ici


Cela a fait l'affaire pour moi. Pour une raison quelconque, j'avais seulement essayé d'importer le projet (un grand projet Maven avec de nombreux sous-modules).
Torbjørn Kristoffersen

2

Si vous avez importé votre projet maven dans IntelliJ et qu'il y a des erreurs dues au fait que les importations maven ne sont pas résolues, c'est peut-être à cause des paramètres maven personnalisés.xml que vous utilisez peut-être. J'ai essayé de le remplacer dans les paramètres maven par défaut d'Intellij, mais cela n'a pas aidé. Enfin, j'ai dû le conserver dans ~ / .m2 / settings.xml, puis IntelliJ l'a finalement honoré.


C'est le paramètre par défaut, oui?
rogerdpack

2

J'avais un fichier settings.xml vide dans Users /.../. M2 / settings.xml. Quand j'ai ajouté

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0
                      https://maven.apache.org/xsd/settings-1.0.0.xsd">

</settings>

toutes les dépendances ont été chargées


1

Dans Paramètres -> Maven -> Référentiels seuls certains référentiels configurés dans mes paramètres s'affichent.

solution de contournement

C'est probablement un bug (Idea 13.1.5 Ultimate). Cela m'a aidé à changer les rétroviseurs. Celui qui ne montrait pas au sommet.


1

Avec intelliJ 16.1.4, j'ai eu le même problème. Vous devriez jeter un œil au journal des événements, car il m'a dit "Fichier pom.xml non géré trouvé: ..." J'ai ensuite cliqué dessus et le problème a été résolu.


1

Dans mon cas, j'ai développé le panneau des projets maven sur le côté droit, j'ai cliqué sur + et j'ai ajouté le projet. Ensuite, cela a fonctionné.


1

Si vous avez des dépendances dans pom.xml spécifiques à votre organisation, vous devez mettre à jour le chemin de setting.xml pour votre projet qui est défini par défaut sur votre répertoire utilisateur dans Ubuntu: /home/user/.m2/settings.xml - > (changez-le en votre chemin de conf apache-maven)

Mettre à jour le fichier Setting.xml Intellij


0

3 étapes simples: IntelliJ 14:

  1. Fichier> paramètres> Construction, exécution, déploiement> Outils de construction

  2. Sélectionnez Maven

  3. Répertoire de base Maven: C: / Program Files / apache-maven-3.3.3 (votre emplacement équivalent)


0

Gardez à l'esprit qu'IntelliJ ajoute les classes de votre installation Maven locale à son propre chemin de classe , alors gardez-le à jour.

Dans mon cas, IntelliJ a essayé d'appeler la méthode org.eclipse.aether.util.ConfigUtils.getFloat(). Cela a causé un java.lang.NoSuchMethodError, parce que ma version Maven vieille de plusieurs années ne contenait pas encore cette méthode. En raison de l'exception, IntelliJ a arrêté de résoudre les dépendances.

Après la mise à jour de Maven, vous devez modifier le paramètre "Répertoire de base Maven" dans "Build, Execution, Deployment" -> "Maven". Après cela, vous devez redémarrer IntelliJ, car le chemin de classe de la JVM d'IntelliJ ne changera pas pendant l'exécution.

Il m'a fallu un certain temps pour résoudre ce problème, car je ne m'attendais pas à ce qu'IntelliJ utilise les classes de mon installation Maven locale. Je pensais qu'il utilise ses propres JAR groupés. J'espère donc que cette information sera utile pour les autres.


0

<option name="workOffline" value="true" />ce workspace.xmln'est pas votre ami. Conseillez de vérifier cela avant de supprimer votre .idea(qui a beaucoup de paramètres utiles que vous ne voulez probablement pas perdre)

C'est un workspace.xmldécor maven


0

Il me semble que les solutions à ce problème sont nombreuses et toutes semblent un peu magiques. Pour moi, l'invalidation des caches, la réimportation ou tout autre élément déjà mentionné ne fonctionnait pas. La seule chose qui a aidé était (sans réimportation) d'aller dans les paramètres Maven, de décocher l'importation automatique et de la revérifier.

entrez la description de l'image ici


0

il y a un problème avec la version Maven fournie. comme quelqu'un l'a suggéré précédemment, je suis passé à ma propre installation Maven et les dépendances fonctionnaient comme par magie (IntelliJ 2018.3)


0

Je viens d'avoir ce problème lors de l'ajout d' <dependency>...</dependency>éléments à un fichier <profile>. Je viens de découvrir que si j'ajoute (insère) les éléments de dépendance non résolus à l' <dependencies>élément, les dépendances sont téléchargées à partir du référentiel maven; Je peux ensuite supprimer l'élément dependency de l'élément dependencies.


0

L'utilisation de maven par défaut (fourni avec IntelliJ) peut également créer ce problème. Configurez donc le maven que vous avez installé.

Cela peut être fait à partir de: Fichier -> Paramètres -> Build, Execution, Deployment -> Maven

Mettez à jour les paramètres suivants en fonction de votre installation maven:

  1. Répertoire de base Maven =
  2. Fichier de paramètres utilisateur =
  3. Dépôt local =

0

D'accord, j'ai été confronté à ce problème pendant des jours. J'essayais d'importer la bibliothèque POI et la bibliothèque Simple JSON, j'ai essayé toutes les réponses proposées et la solution n'a rien fonctionné. En fin de compte, la solution pour mon cas était assez simple

J'avais juste besoin d'ajouter ce qui suit à mon fichier module-info.java après avoir mis les dépendances dans mon fichier POM:

 requires poi.ooxml;
 requires poi;
 requires json.simple;

donc je pense que parce que mon projet était dans un package dans un module, j'ai dû le faire pour que le système sache que ces bibliothèques importées seront utilisées. si simple, mettez le nom de la bibliothèque après require dans votre fichier module-info.java

J'espère que ça marche pour toi


0

allez dans les bibliothèques externes et supprimez-les toutes les bibliothèques qui disent root après avoir cliqué sur réimporter tout le projet

entrez la description de l'image ici

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.