2011-09-09 5 views
1

J'ai deux projets Maven, disons A et B, une simple demande B, inverse n'est pas vrai. Il n'y a pas de problème quand j'emballe A d'eclipse. Dans le "pom.xml" du projet A a un nœud de dépendances sur B. Dans jenkins, j'ai configuré le projet B en ajoutant trois objectifs, qui sont "clean package install". Donc, à chaque fois que la construction de B finit, il doit exister le fichier d'archive du B dans mon référentiel maven local (je l'ai vérifié). D'un autre côté, lorsque je construis le projet A, j'ai eu beaucoup d'erreurs de compilation "je ne trouve pas le symbole x". Quel pourrait être le problème, des idées?problème de dépendance Maven construit le projet jenkins

Merci d'avance.

Répondre

1

Juste pour vous assurer: Vous regardiez dans ~jenkins/.m2/repository/, oui?

Notez que install inclut toujours package, donc clean install est suffisant.

Mais le problème est ailleurs.

  1. Vérifiez que les versions sont les mêmes. Utilisez un numéro de version exact dans la dépendance de A, pas une gamme de versions pour vous assurer de ce qu'il récupère (sinon, Maven pourrait trouver une version "plus appropriée").

  2. Si la dépendance était pas là, Maven ne commencerais pas le compilateur (parce que la construction du chemin de classe échouerait). Donc le problème n'est pas le fichier JAR mais le contenu. Assurez-vous que le fichier JAR de B contient vraiment ce que vous attendez (jar tvf est votre ami).

  3. Supprimez le référentiel sur le serveur Jenkins pour vous assurer qu'il n'y a pas de vieilleries.

+0

Merci beaucoup pour votre intéressant Aaron. J'ai trouvé le problème comme vous l'avez indiqué en 2 (contenu du fichier jar): avant de configurer les jenkins, je copie la source de B vers le SVN (la première fois, j'ai développé dans mon local). Cependant, j'ai mal interprété comme principal et test. Lorsque j'ai corrigé la structure du dossier en tant que src/main et src/test, le problème lié à la construction du projet A a disparu. –

Questions connexes