web-dev-qa-db-fra.com

Variable classpath non liée

Lors de la reconstruction de mon projet avec Maven, je reçois parfois des centaines de 

'variable de chemin d'accès aux classes non liée M2_REPO/etc/..'

dans mes erreurs Eclipse, la plupart du temps, lorsque je reconstruis, il disparaît, mais à cette occasion, il me maudit suffisamment pour rester.

Lorsque vous parcourez réellement le système de fichiers, les fichiers jars qu’il détaille ne sont pas présents. Eclipse ne les voit tout simplement pas pour une raison quelconque. Mon m2_repo est correctement référencé dans ma section preferences-> Java-> classpathvariables et mes variables d'environnement sont également correctement définies.

Des idées pour moi les gens?

13
DasBooten

Si vous avez déjà fait plusieurs fois ÉTAPE 1 , allez à ÉTAPE 2

ÉTAPE 1
Essayez de supprimer et de redéfinir env vars:

  • Ouvrez les préférences Eclipse [Fenêtre - Préférences]
  • Allez à [Java - Chemin de construction - Variables de chemin de classe]
  • Cliquez sur Nouveau et définissez son nom comme M2_REPO.
  • Cliquez sur Dossier et sélectionnez votre dossier de référentiel Maven. Par exemple, mon dossier de référentiel est C:/Users/user/.m2/repository
  • Reconstruire le projet.

En plus de l'intérieur d'Eclipse, vous pouvez également ajouter la variable M2_REPOà partir de la ligne de commande à l'aide de cette commande Maven:

mvn -Declipse.workspace=<path-to-Eclipse-workspace> Eclipse:add-maven-repo


ÉTAPE 2
Si votre chemin de construction est correctement défini, vérifiez Maven settings.xml:

Window --> Preferences --> Maven ---> User Settings

Sinon, définissez-le ici et changez le chemin localRepository dans la balise settings du fichier settings.xml. Normalement, vous trouverez le fichier settings.xml dans le dossier .m2 sous le dossier de l’utilisateur (par exemple, C:\Documents and Settings\nomutilisateur.m2).

34
Jordi Castilla

Eh bien, j'ai essayé les étapes de la réponse de @ Jordi. Mais ceux-ci ne font aucune différence. Et j'ai essayé des choses rituelles dans Eclipse telles que: 

  • fermer le projet et l'ouvrir
  • redémarrer le IDE 
  • nettoyage et reconstruction etc ...

sans succès. 

Une chose étrange s’est alors produite lorsque j’ai modifié le niveau de conformité de Java à 1.8 et que je l’ai rétabli à 1.6 . Ça a marché! Toutes les erreurs de variable de classpath non liées ont maintenant disparu.

8
Zolbayar

Update Project a travaillé pour moi:

Étape 1: Sélectionner le dossier du projet

Sélectionnez le dossier du projet qui donne l'erreur.

Étape 2: Mise à jour du projet Maven

Alt + F5 raccourciOUright-click >> Maven >> Update Project.

Étape 3: finaliser

Click OK et laissez-le update.

Les erreurs devraient disparaître après cela.

Bonne chance

1
Akash

L'erreur avait disparu après la désinstallation de Maven Integration d'Eclipse. 

0
Zhen

J'ai essayé toutes les choses ci-dessus mais aucune d'elles ne fonctionne pour moi. Voici la solution qui fonctionne pour moi;

clic droit pour projeter >> Chemin de construction> Configurer le chemin de construction> Bibliothèques

Vous allez voir tous les pots que vous voyez dans les problèmes (M2_REPO ....)

>>> Sélectionnez ces bocaux >>> Supprimer >> Appliquer et fermer

le point d'exclamation disparaît et toutes les erreurs ont disparu

Note: avant cela, j’ai aussi fait une installation propre de MVN, le projet de mise à jour n’a pas aidé lorsque j’ai essayé

L'espoir vous aide ...

0
Jerfi.K

J'ai déjà vu ce problème plus d'une fois et je n'utilise pas le plugin maven, je n'ai donc pas de fenêtres -> Préférences-> Maven. Pour résoudre ce 'unbound classpath variable M2_REPO/etc/.. 'bien que vous ayez un problème de configuration de variable M2_REPO -> renommer la variable M2_REPO en quelque chose d’autre (M2_REPO2 par exemple), puis le corriger à nouveau en M2_REPO et ce problème disparaît. 

0
Sudhir Srinivasan

Mars.2 avait ce problème pour moi. J'ai essayé toutes ces suggestions, puis supprimé le dossier ~/.m2/repository/.metadata, redémarré Eclipse et M2_REPO s'y trouvait.

Vous y êtes arrivé en consultant Maven - Paramètres d’utilisateur, mais il n’existe pas de fichier settings.xml, mais il existe un dossier .metadata qui, si vous effectuez un zoom avant, contient un fichier jdt contenant l’emplacement de référentiel Eclipse. Je me suis dit que ça ne marchait pas, alors je l'ai effacé. Une fois Eclipse redémarré et M2_REPO configuré, le dossier ~/.m2/repository/.metadata est toujours supprimé. Doit avoir été en conflit avec quelque chose d'autre dans l'espace de travail. Je ne sais pas comment il est arrivé là-bas.

0
Neill

J'ai essayé de définir la variable M2_REPO plusieurs fois, mais finalement, la seule chose qui m'a aidé de démarrer Eclipse avec le paramètre -clean .

0
tok