Vous remarquez comme je suis fort pour donner des titres informatifs à mes questions
Donc, grâce à votre aide, je progresse dans mon plugin de wrapper Fit. Je suis maintenant capable de lancer Fit depuis un plugin maven, il trouve le fichier input, il me dit quelque chose de compréhensible.
MAIS lorsque j'essaie un test sur une application, il semble que Maven, s'il trouve bien Fit... ne trouve plus mon application, ce qui est tout de même contrariant. Apparement, d'après la doc, c'est fait exprès.
Alors j'ai suivi les instructions p. 147 du nouveau bouquin, au paragraphe 5.5.1 Accessing Project Dependencies.
Malheureusement, Maven me répond :
... ce qui me semble bien justifié, cela vient du private java.util.Set dependencies; que le bouquin me dit d'écrire, mais moi, que puis-je répondre à Maven ?...[INFO] ------------------------------------------------------------------------
[ERROR] BUILD ERROR
[INFO] ------------------------------------------------------------------------
[INFO] Failed to configure plugin parameters for: mvn.plugins:maven-fit-plugin:1.0-SNAPSHOT
Cause: Class 'java.util.Set' cannot be instantiated
Autre problème pénible, suite au premier exemple du bouqin, j'ai mis comme paramètre par défaut à mon fichier input : default-value="${project.build.outputDirectory}/${project.artifactId}-${project.version}-fitinput.html", ce qui provoque la recherche du fichier d'input dans target/classes, endroit qui n'est vraiment pas très adapté. Malheureusement, impossible de trouver une liste des propriétés standards de maven pour que je puisse modifier ça ; je voudrais que mon fichier d'input soit dans target, simplement.
Une question philosophique, maintenant. Comment est-ce que je fais pour tester mon plugin seul ? Parce qu'actuellement, la procédure est assez fastidieuse : j'écris mon plugin, et j'enregistre le snapshot. Puis je vais dans l'appli finale, que je recompile et je regarde comment mon plugin réagit à son déclenchement. Bref c'est assez long et pénible. Y a-t-il une meilleure façon de procéder ?
Merci d'avance.
Partager