Erreur lors de l'ouverture POM Maven fichier de dépendance de la hiérarchie dans Eclipse - Projet “erreur de lecture”
Quand j'ouvre un fichier POM et cliquez sur la "Dépendance" Hiérarchie onglet en bas, il me donne l'erreur, Projet "erreur de lecture". Il travaille avec d'autres projets dans le même espace de travail, mais pas avec celui-ci. Des idées?
MODIFIER
En réponse à @Yhn de réponse.
- L'exécution de la compilation et de colis de phases à l'extérieur de l'Éclipse depuis la ligne de commande fonctionne comme prévu. Il compile l'application et construit la finale de la GUERRE de fichier.
- Eclipse est en effet pointant vers l'emplacement par défaut de Maven settings.xml fichier, de sorte qu'il devrait être au courant de la coutume des dépôts qui sont définis dans celui-ci (mon entreprise dispose de son propre repository Maven).
- Je peux ouvrir et modifier le fichier POM d'Eclipse, de sorte qu'il doit avoir des autorisations de lecture/écriture dans le fichier.
- Le projet n'est pas configuré dans Eclipse comme un projet Maven, donc je ne peux pas exécuter le package de la phase de l'Éclipse (je ne peux le lancer depuis la ligne de commande).
Je me demande si il n'a rien à voir avec le fait que j'avais du mal à construire le projet avec Maven 3, car apparemment, certains des dépendances transitives sont configurés pour Maven 1, qui Maven 3 ne prend pas en charge (c'est ma théorie, de toute façon, sur la base des messages d'erreur). Je peux construire le projet avec Maven 2, mais je reçois encore des messages tels que les suivants:
Downloading: http://dist.codehaus.org/mule/dependencies/maven2/org/codehaus/xfie/bcprov-jdk14/133/bcprov-jdk14-133.pom
[INFO] Unable to find resource 'org.codehaus.xfire:bcprov-jdk14:pom:133' in repsitory mule (http://dist.codehaus.org/mule/dependencies/maven2)
Il doit être en mesure de trouver ces dépendances. cependant, parce qu'il a téléchargé les Pots très bien et peut générer l'application. Il me semble que le problème est que les dépendances n'ont pas de POM fichiers associés avec eux, ce qui est peut-être pourquoi ils ne peuvent pas être utilisés avec Maven 3. Cela pourrait aussi être la raison pour laquelle je ne peux pas afficher la Dépendance de la Hiérarchie dans Eclipse.
EDIT 2
J'ai converti le projet à un projet Maven en allant dans "Configuration > Convertir en Projet Maven". Quand j'ouvre le fichier POM, je vois l'erreur:
ArtifactDescriptorException: Failed to read artifact descriptor for woodstox:wst (Click for 140 more)
(woodstox:wst est une autre dépendance transitive du projet). Une erreur apparaît dans le "Marqueurs" de la vue pour apparence tous les depedency et transitive de la dépendance dans mon projet. Cependant, je peux réussir à construire le projet en faisant un "Exécuter en tant Qu' > Maven build". (Edit: Ce pourrait être parce que ce projet n'a pas le code source de Java, mais les Pots de les dépendances apparaissent correctement dans la dernière GUERRE.) La Dépendance de la Hiérarchie donne toujours le même message d'erreur--"Projet d'erreur de lecture".
À propos de la "Incapable de trouver des ressources, les messages"--mais cela n'apparaît que pour une poignée de dépendances transitives. Le projet a beaucoup plus de dépendances transitives, mais ces messages n'apparaissent pas pour eux. Il semble que, parce que les dépendances n'ont pas de POM fichiers, que Maven essaie de les rechercher à chaque fois que le projet est construit. Est-ce normal de ne pas avoir de Boutons??
Comment pourrais-je aller sur l'obtention d'une pension de manager? Est-ce quelque chose qui aurait à être installé sur la société repository Maven ou vous pouvez l'installer sur votre propre poste de travail?
- Si je me souviens bien; eclipse a un maven console affichant les erreurs lors de ce genre de choses arrivent. Pourriez-vous vérifier si la console affiche tout ce qui pourrait aider à identifier la cause de cela?
- Ce projet peut-il correctement compilé emballé etc. via la Console ?
- Savez-vous comment je peux ouvrir la console?
- Oui, je peux courir un
mvn compile
,mvn package
, etc à partir de la console, sans aucun problème. - Il devrait être dans la normale de la fenêtre de la console; quand cliquant sur le bouton "Ouvrir la console" sur le bouton, vous devriez être en mesure de sélectionner "Maven console"
- L'a obtenu. Il affiche juste le même message d'erreur (qu'il imprime deux fois pour une raison quelconque):
6/21/11 11:25:26 AM EDT: [ERROR] Project read error
- J'ai eu le même problème avec un projet et abandonne sur elle. Je suis juste en utilisant mvn eclipse:eclipse maintenant et d'utiliser le projet comme "normale" projet Eclipse (pas de Maven de la résolution des dépendances). Semble comme une divergence entre l'Maven 2, 3, depuis la page de configuration de Maven dans Eclipse dit que l'embedded Maven 3 est toujours utilisé pour l'espace de travail de résolution de dépendances. Il est triste de constater que l'un des plus utilisés de la dépendance des outils de gestion ne peut toujours pas travailler ensemble parfaitement avec l'un des plus utilisés IDEs... Tous mes autres projet de travail correct, bien que. Seulement celui-là.
Vous devez vous connecter pour publier un commentaire.
J'ai eu ce problème avec certains non-maven pots que j'avais besoin de l'inclure dans mon projet maven. J'ai mis les pots dans mon dépôt local à l'aide de cette commande maven:
Puis je me réfère à eux comme des dépendances dans mon pom.xml:
Cela a bien fonctionné pendant un certain temps, mais j'ai mis à jour quelque chose dans eclipse, et j'ai commencé à faire l'erreur de vous décrire.
La solution est de les faire sortir du dépôt local, et refaire l'install-fichier de demander à maven pour générer une pom pour vous:
La commande sera la cause d'une pom être généré dans le même répertoire (à l'intérieur de votre local repo) où le pot est placé.
Dans les dernières versions d'eclipse, maven soutien, le maven build est toujours fait avec maven 2 (si vous cliquez sur le bouton droit pom.xml, choisissez exécuter en tant qu'mvn package par exemple). L'analyse de dépendance se fait maintenant avec un intégré à maven 3 plugin, qui n'est pas comme une dépendance qui n'a pas de pom.xml.
J'ai eu le même problème. Si vous avez fait de votre projet un projet maven, vous devez exécuter:
Qui a fonctionné pour moi.
Compte tenu de l'information à travers les commentaires:
mvn compile/mvn package de travail par le biais de la console (je suis en supposant à l'extérieur de l'éclipse). Sur cette base, le POM fichier doit être correcte et les dépendances peuvent être résolus.
; Cependant, il se pourrait que l'éclipse de paramètres ne sont pas corrects. Par exemple, si l'éclipse a ses propres propriétés maven (au lieu de la valeur par défaut ~/.m2/settings.xml fichier); je peux imaginer l'échec de la résolution des dépendances configuré dans le settings.xml utilisé par maven lui-même. Les paramètres de ce qui devrait être dans les Préférences d'Eclipse @ Maven > Paramètres de l'Utilisateur.
Assurez-vous également que l'Éclipse est capable de lire le fichier (non verrouillé, les droits corrects, etc).
Si cela semble être correcte, pouvez-vous essayer d'exécuter le mvn but de compiler à partir d'eclipse? Vous pouvez le faire en cliquant droit sur le projet et en sélectionnant
run as > maven package
. De cette façon, il doit exécuter maven avec les mêmes paramètres que l'éclipse est de l'aide, et peut afficher les erreurs supplémentaires dans sa configuration.--
En réponse à des informations supplémentaires:
Fondamentalement, il vous dit - lors de l'utilisation de Maven 2 - qu'il ne peut pas trouver une ressource de dépendance (dans ce cas bcprov-jdk14) dans le référentiel (codehaus/mule). Quand je fais une recherche que maven module (bcprov-jdk14) je le trouve dans le repo Maven central (par le biais de notre local nexus) @ repo1.maven.org/maven2. Peut-être que provoque l'erreur que vous obtenez avec Maven2?
Et que le Maven 3 doc a dit; pour Maven 1.x repo s; vous devriez proxy par le biais d'un repo gestionnaire qui peut servir de vous comme d'un référentiel maven 2 (je crois que nous le faisons ici, trop pour certains repo s par le biais de Sonatype Nexus OSS)
ps.: L'activation de gestion des dépendances maven dans eclipse devrait être suffisant pour être en mesure d'utiliser maven exécuter des cibles; si vous voulez le tester.
--
Sonner comme il peut y avoir plusieurs problèmes... étant donné que la normale maven build fonctionne très bien, on pourrait penser que maven peut obtenir au moins les objets dont il dépend et de leurs dépendances... Pourtant, eclipse ne semble pas être en mesure de.
Vérifiez si votre Eclipse paramètres de connexion à internet sont correctes? Puisque vous parlions d'une société repo, je suis en supposant qu'il sera probablement un proxy (j'ai dû mettre mon Eclipse pour utiliser celui-là aussi; mais pour les plugins (voir le point suivant)).
Une autre possibilité, à partir de l'expérience, peut être une règle de base de proxy sur le bloc *.pom demandes d'url (notre proxy ici les blocs qui à force d'utilisation des locaux des pensions de manager, comment le mal et ennuyeux qui est :(). Vous pourriez vouloir essayer et ouvrez le .pom fichier, il essaie de télécharger manuellement dans votre navigateur pour voir si c'est le cas (je ne peux pas, par exemple...).
Pour obtenir le repo mis en place, vous auriez probablement demander le responsable du référentiel pour l'ajouter en tant que maven2 proxy.
À tout le moins, il semble Eclipse est d'avoir des problèmes à obtenir la dépendance des pdm (qui sont nécessaires à la construction de l'arbre des dépendances) de l'internet. Vous pouvez toujours essayer de demander à certains des TIC de l'équipage (si ils sont capable de...) à ce sujet au sein de votre entreprise, peut-être qu'ils ont quelques conseils utiles.
J'ai eu le même problème quand j'ai ajouté une nouvelle dépendance pom.xml sans connexion réseau. Après cela, j'ai eu beaucoup de problèmes tels que le "Manque d'artefacts", "Manquant de Descripteur", ou "Projet d'erreur de Lecture". J'ai résolu ce problème
cette pom paramètre a fonctionné pour moi
Généralement ce qui se passe si il y a une faute de frappe dans le pom que Maven ne peut pas comprendre et puis il jette
Project read error
. Comme dans mon cas, j'ai copié une dépendance maven extrait de code et j'ai passé la version. Au lieu de taper le numéro de version actuel # il se faisait de façon dynamique${asciidoctorj.version}
et mon pompon n'ont pas cette dans la section propriétés. Donc j'ai eu cette erreur. Une fois que je l'ai enlevé et mettre un numéro de version, il a commencé à travailler.J'ai eu cette après la copie d'un local de dépôt de dossier à partir d'une autre machine. La solution était d'aller dans le dossier de référentiel, j'ai copié et supprimer
_remote.les référentiels ainsi que les LastUpdated fichiers " puis sur actualiser les dépendances Maven dans Eclipse (Alt+F5)
J'ai fait face à la même situation aujourd'hui. Dans mon cas, elle est causée par la dépendance de nom dans le mauvais cas. E. g.
Projet -> le Projet B -> Projet de C
Dans le projet B de la pm de fichier, j'ai malencontreusement spécifié la dépendance des artefacts nom avec un "c" au lieu de "C".
Que sous mac os, le système de fichiers est insensible à la casse. donc, je peux le créer en ligne de commande sans détection de cette erreur.
Dans Eclipse, il se casse, mais il fournit un très mauvais message d'erreur. Dans la liste d'erreurs, il est dit "problème de dépendance", mais le nom de la dépendance est vide. Il a également ne peut pas identifier la ligne dans le POM à l'origine du problème.
Lorsque vous essayez d'ouvrir "Efficace POM" dans le POM de l'afficheur, il montrera projet d'erreur de lecture. Dans la fenêtre pop-up boîte de dialogue d'erreur, il va montrer:
Tous les messages sont inutiles et trompeuses.
J'ai finalement détecté ce problème à soumettre à Jenkins CI après avoir gaspillé des heures de temps.