J'ai créé un archétype où vous pouvez définir le Modulename (ou vous attendre à) en utilisant
Un nom de propriété requis Modulename, voici les métadonnées de l'archétype XML (réduit, que j'ai également essayé avec des résultats similaires) après l'installation et la génération, la valeur Modulename n'est pas utilisée dans le
nom du répertoire ou artifactide, les valeurs de résolution sont p> la valeur est remplacée correctement sur certains autres fichiers du projet, de sorte que
pas de problèmes d'orthographe, je suppose. P> J'ai vu beaucoup de choses similaires, mais toutes en utilisant rootpartifactide et en fait
Si j'utilise roolotartifactid (comme partie de départ du nom), cela fonctionne comme prévu. p> Naviguez pour trouver un problème similaire, une idée de la raison pour laquelle cela ne fonctionne pas, ni comment le faire fonctionner? < / p> p>
4 Réponses :
regarder à l'intérieur des sources maven-archétype (version 2.2), semble que la seule valeur possible à utiliser est roolopartifactide extraite à partir defaultfileSetchecheTypegenerator
Voir Bug Jira.Codehaus.org/browse/areType-191 qui ne clarifie pas les choses à beaucoup, mais au moins le problème est déjà autour
J'ai trouvé un travail raisonnable autour. P>
semble le seul endroit où vous ne pouvez utiliser que la racine "forte> rootpartifactide forte> est la
Qu'est-ce que j'ai fait: p>
Utilisez Utilisez __ modulename em> __ fort> dans p>
dans le descripteur d'artefact fort> p>
Tout cela dans un script d'ant incorporé dans un postcreate-pom.xml
être exécuté après la création de projet. P>
Et cela fonctionnait bien. P>
J'espère que c'est utile pour quelqu'un. P>
Merci à tout le monde qui prend juste le temps de lire mon
Question, Tonio. P>
(
J'ai le même problème. Que voulez-vous dire avec 'postCreate-pom.xml'? Existe-t-il un moyen standard de faire une action post-créature à la fin d'une création de projet?
Eh bien, je n'ai pas trouvé de moyen de le faire, je viens de créer le postCréate-pom.xml dans le cadre du projet et l'exécuter ensuite pour terminer la configuration du projet.
L'approche correcte est celle de @sgpalit (même si elle n'est pas simple)
Après avoir généré l'archétype à partir d'un projet, modifiez le fichier . Ajouter p> Cela le fera filtrer votre fichier POM! Puis exécutez cible \ sources générées \ archétype \ src \ Ressources \ meta-inf \ maven \ archétype-metadata.xml code>.
mvn installer code> à nouveau. P> p>
Le problème que j'avais était que j'ai essayé d'utiliser $ {artifactid} dans l'un des fichiers de configuration .yml et cela n'a pas fonctionné. Entrer dans l'archétype-métadata.xml et inclure / * i> .yml fonctionne. Merci
archétype-métadata.xml et pom.xml du sous-module:
Yo a sauvé ma journée! Merci
Même si c'est la bonne réponse, cela vaut la peine d'élaborer. Afficher la structure de répertoire dans l'archeType-Ressources au moins parce que c'est très pas simple