Maven versch. active profiles in MMP

B

bygones

Gast
Hi,

zuerst mal die Frage - vll gibts schon ne klare Antwort - ansonsten kann man sich auch gern den Hintergrund drunter durchlesen ;-)

Kann ich in der Parent pom ein Profil definieren und dann in den Modul poms als aktiv setzen ?


Ich habe ein Multimodul projekt, bei den manche Projekte sog. idl Dateien (corba) haben welche ueber einen Generator zu Java files generiert werden. Diese sollen dann als zusätzliche Sourcen beim compilieren mitgenommen werden.

Damit ich dieses System nicht redundant habe will ich es in die Parent pom als profil schreiben, welches aktiv ist, wenn es den Ordner "idl" gibt.
Code:
// ... sachen davor
<profile>
  <id>idl2java</id>
  <activation>
   <file>
    <exists>idl</exists>
   </file>
  </activation>
  <build>
   <plugins>
  // plugins
Starte ich den build in einem Projekt welches einen idl Ordner hat klappt es.
Starte ich den buld in einem Projekt, welches nicht den idl Ordner hat klappt es.
Starte ich den build im Parent Projekt, klappt es nicht, das profil ist nicht aktiv...

Ich gehe davon aus, dass die Entscheidung "aktiv <-> nicht aktiv" beim Parsen des Parent Poms getroffen wird, da dieser kein idl Ordner hat ist es "nicht aktiv" und die Module mit idl Ordner werden somit scheitern.

ich habe nur [c]activeProfiles[/c] gefunden, die scheinbar nur in den settings.xml stehen... ich wills aber in den entsprechenden poms haben ?

oder gibt es einen anderen weg ein Profil nur fuer spezifische Module zu aktivieren ?

Danke
 
M

maki

Gast
Würde sagen Profile sind dafür nicht geeignet, würde das vielleciht über Vererbung lösen, d.h. eine Parent POM für Module mit IDL und eine für Module ohne und die Konfig nicht ins Profil sondern direkt ins <build> Element.
 
B

bygones

Gast
danke - so ists nun auch die Zwischenlösung.

Ich nehms mal als Anlass mich in Plugins einzuarbeiten und versuche mal eins zu schreiben :)
 

Neue Themen


Oben