Question

Quelqu'un peut-il me dire comment configurer Maven pour elle aussi de compiler des sources à partir du répertoire de target/hibernate3/generated-sources? Je l'ai déjà lu ce et d'autres postes, mais ils ne semblent pas pour résoudre mon problème (ce qui semble en effet trivial).

I ont utilisé la configuration de mise en veille prolongée approche ascendante pour cfg.xml, hbm.xml et génération POJO (à savoir générée automatiquement la configuration de mise en veille prolongée complète à partir d'un schéma de base de données existante). Je suis également que l'utilisation des dispositions de répertoire standard maven et hibernate3-plugin. Cependant, lors de l'exécution mvn compile dans la ligne de commande alors que mes sources sont dans le src/main/java et les sources générées dans /target/hibernate3/generated-sources que ceux de src/main/java obtenir compilés et copiés dans target/classes. Je ne voudrais pas de générer des sources en src/main/java que je voudrais mvn clean pour les nettoyer.

Je voudrais résoudre le problème en utilisant command-line, plugins et pom.xml seulement. Est-il un moyen de configurer maven-compiler-plugin de le faire? Ou est-il un autre moyen?

Cordialement et merci pour toute aide.

Était-ce utile?

La solution

La convention est de générer du code à target/generated-sources/<generator> donc dans votre cas, je générer des sources target/generated-sources/hibernate3 (il est triste le plugin hibernate3 ne suit pas cette convention par défaut). Quoi qu'il en soit, les choses devraient fonctionner et en fait, le POM I posté dans cette réponse précédente fait (je re-couru mon exemple de projet et il fonctionne sans aucun doute). Pourriez-vous être victime de MHIBERNATE-104 ? Honnêtement, je suis confus.

Pour contourner ce problème, vous pouvez utiliser le Construire Aide Maven Plugin et son but build-helper:add-source pour ajouter votre répertoire comme répertoire source. Voir la Utilisation page pour un exemple de configuration.


  

J'utilise exactement la pom vous propose ici, tout simplement pas branché sur le cycle de vie de construction par défaut (sans exécution).

Ce doit être la cause du problème: si hibernate3:hbm2java ne fait pas partie du cycle de vie de construction, il ne reçoit pas la possibilité d'enregistrer le répertoire de sortie comme dossier source. Donc, Maven ne connaît pas pendant la « construction normale » et simplement l'ignorer.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top