10
votes

Passer le drapeau de débogage Maven de Hudson

J'ai un problème avec une construction maven à Hudson. Ce problème serait assez facile à résoudre si je pouvais voir que la sortie de Maven avec le drapeau -x est passée. Cependant, je ne peux pas trouver un moyen de faire cela. Si je spécifie "-x" dans le champ "Buaux et options" de la section "Build" de la configuration du travail, ma sortie de console ressemble exactement à la même chose que si je n'avais pas passé le drapeau "-X" du tout. Est-ce que la journalisation du débogage va ailleurs? Ou y a-t-il une autre façon dont j'ai besoin de passer le drapeau "-x"?

mise à jour:

La raison pour laquelle cela ne fonctionne pas est que la construction échoue pendant la partie "POMS PESSING" du processus Hudson, avant de commencer à démarrer la véritable construction Maven et passe dans tous les paramètres que je spécifie dans le projet. Donc, ce dont j'ai vraiment besoin, c'est un moyen d'obtenir une meilleure journalisation pendant la partie "Pomes à analyser" d'une construction maven à Hudson.


0 commentaires

3 Réponses :


8
votes

C'est ce qu'il dit dans le texte de l'aide.

Spécifie les objectifs à exécuter, tels que comme "propre installation" ou "déployer". Cette champ peut également accepter tout autre options de ligne de commande à Maven, telles que "-e" ou "-dmaven.test.skip = vrai". p> blockquote>

Je l'aurais placé là aussi. P>

L'aide maven me donne les deux options suivantes: p>

 -X,--debug                    Produce execution debug output
 -e,--errors                   Produce execution error messages


2 commentaires

J'ai déjà essayé cela avant (et je viens d'essayer de nouveau) mais n'aurez aucune sortie supplémentaire. On dirait que cela fonctionnerait, mais ce n'est pas le cas. Si j'exécute cette même construction directement à partir de la ligne de commande avec -x ou --debug, je reçois beaucoup d'informations supplémentaires. Cependant, la question spécifique que j'essaye de résoudre ne se produit que lorsque la construction est exécutée à partir de Hudson.


Mettez une étape de construction supplémentaire (script de lot ou shell) et exécutez la commande définie. Comparez la sortie avec la sortie d'une commande définie émise manuellement de la ligne de commande. Cela peut vous aider à voir s'il existe une différence entre les variables d'environnement que Hudson voit et vos variables d'environnement de ligne de commande. La variable de chemin a une influence énorme dans certains cas. - J'espère avoir raison avec l'hypothèse que vous exécutez le test de ligne de commande avec le même compte d'utilisateur que Hudson Runs sous.



0
votes

J'ai exactement le même problème avec Hudson 1.398 (Maven 2.0.10, JDK 1.6.0_07): La construction échoue lors de l'analyse des fichiers POM. Il fonctionne localement et lors du lancement manuel de l'espace de travail Hudson.

Cette construction nécessite une variable d'environnement à régler (pour le chemin d'un module), mais la variable d'environnement ne semble pas être propagée de Hudson à Maven. Donc, comme vous, j'ai également essayé d'obtenir plus de détails de Maven avec l'option -X, mais cela ne semble pas non plus être propagé.


0 commentaires

5
votes

à Jenkins, et je suppose que cela est vrai pour Hudson également, des arguments de ligne de commande peuvent être transmis à Maven dans le cadre "Objectifs". J'ai pu passer le paramètre -x en l'ajoutant au début des "buts".

-X package install


0 commentaires