2011-08-26 4 views
1

J'ai plusieurs projets dans Eclipse (tous sont des projets Maven) et un projet principal (également projet Maven) qui dépend du reste. J'ai essayé d'ajouter cette dépendance en définissant le chemin de génération java (clic droit sur le projet -> préférences -> java build path -> (tab) projects -> add). Mais il y a un problème lors de l'exécution de l'objectif d'installation de maven - c'est une erreur de compilation: ... (class) ... "ne peut être résolu" ... - c'est vraiment comme si maven ne voyait pas mes ressources d'autres projets. Eclipse ne m'avertit que quelque chose comme ceci: "Classpath entry/my-subproject1 ne sera pas exporté ou publié, Runtime ClassNotFoundExceptions peut en résulter." Ces avertissements référencés à chaque sous-projet se produisent dans le projet principal. Il n'y a pas de messages d'erreur d'Eclipse. Dans mon projet principal, où j'importe des classes à partir de sous-projets, je peux cliquer avec le bouton droit de la souris sur l'une des importations et choisir "Ouvrir la déclaration" et il y a une référence valide à la classe d'un sous-projet. dépendances (il n'y a pas d'erreur d'éclipse lors de la construction de l'espace de travail - seulement les avertissements mentionnés ci-dessus) d'autres projets, mais maven ne les voit pas pendant la compilation.Chemin de compilation Eclipse avec d'autres projets

Avez-vous des idées pour résoudre ce problème?

Merci pour votre aide.

Répondre

3

Vous devez déclarer vos dépendances dans le fichier pom.xml pour Maven. Maven ne reconnaît aucune configuration spécifique Eclipse (comme Build Path, etc.) non: Maven Tutorial

Si vous utilisez le m2eclipse plugin, il va configurer votre chemin de génération d'Eclipse en fonction de votre configuration pom.xml

+0

Merci pour votre réponse. J'ai ces dépendances dans mon projet principal pom, mais il y a toujours le même problème :( –

+0

Est-ce que votre projet principal est une construction multimodule ou juste un projet maven régulier? Si ce dernier, alors vous devez avoir installé tous les projets pour lui-même au moins une fois, de sorte qu'ils apparaissent dans votre dépôt maven local – dunni

+0

Tous les projets sont des projets maven réguliers Je vais essayer votre avis Merci –

0

est-ce pas problème maven? Maven a besoin d'un fichier jar créé à partir d'un autre projet dans le dépôt maven. Je ne connais pas beaucoup le plugin maven eclipse mais jusqu'à présent, dans mon observation, il semble que cela fonctionne de cette façon.

Alors que cette affaire doit construire un autre projet afin de créer son fichier jar.

Mais cela prend tellement de temps.

+0

Je pense que lorsque vous avez un projet maven, qui dépend d'un autre projet maven, que vous avez importé dans votre espace de travail, le module m2e s'en chargera. Vous n'aurez pas à créer de dépendance-jar chaque fois que vous modifiez quelque chose dans votre code. Cela fonctionne sur ma configuration d'application web multi-module (si je change quelque chose dans mon module - je n'ai pas besoin de reconstruire ce pot quand j'exécute un projet web principal sur Tomcat, eclipse le fait automatiquement). Quand je vais à des propriétés de mon projet web principal - je peux voir, que les modules sont des références à des projets (pas des pots sur le repo m2 local). –

Questions connexes