Ich hab im Moment ein Projekt mit 2 Modulen. Eins dieser Module -- das Datenbank -Modul -- hat eine "profiliert"-persistence.xml. Auf deutsch: die URL der Datenbank wird per Profil gesetzt. Ein Profil ist per default aktiv. Desweiteren gibt es ein "Release" Profil. Im Mutterprojekt sollte das doch durch folgende Konfiguration aktive sein:
Profile:
Das funktioniert aber nicht. Aus irgendeinem Grund ist beim "mvn release
repare -DdryRund=true" immer das default-Profil aktiv. -Wieso?
Nun hab ich noch eine ähnlich gelagerte Frage: eines der beiden Module bastelt in der Phase "package" ein Paket für Webstart-Funktion. Im Moment enthält das Webstart packet nach dem "mvn release
repare -DdryRund=true" eben nur ...-snapshot.jar.
Da frag ich mich ob ich dieses Plugin ähnlich wie die DB-Profile in die Mutter.pom packen soll oder ob ich eine andere Phase reinschreiben kann so dass bei einem release dieses Paket eben die release.jars enthält. Also in welcher Phase des Release entstehen die release.jars - die Phase nach dieser Phase könnte ich ja in das WebStart-Plugin eintragen?!
Insgesamt hab ich noch ein unzureiuchendes Verständnis der Phasen die Maven bei den diversen goals so durchläuft. Gibt es irgendwo eine Liste wo man alle "Phasen" sieht in ihrer korrekten Reihenfolge? Ich frage mich oft wenn ich irgendein Plugin benutze, was ich für eine Phase angeben soll. Normalerweise ist der default-Wert der meisten Plugins gut manchmal eben nicht und da würde ich gerne eine Idee bekommen was eine andere sinnvolle Phase ist.
Code:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId>
<version>2.0</version>
<configuration>
<!--
During release:perform, enable the "release" profile
-->
<releaseProfiles>release</releaseProfiles>
<goals>deploy assembly:assembly</goals>
<tagBase>svn://.../tags</tagBase>
<scmCommentPrefix>[sandbox] release:</scmCommentPrefix>
</configuration>
</plugin>
Code:
<profiles>
<profile>
<id>Lokal</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<finalName>${artifactId}-${version}-Testlokal</finalName>
</build>
<properties>
<DB-URL>jdbc:mysql://...</DB-URL>
</properties>
</profile>
<profile>
<id>Test</id>
<build>
<finalName>${artifactId}-${version}-TestSlesTest</finalName>
</build>
<properties>
<DB-URL>jdbc:mysql://...</DB-URL>
</properties>
</profile>
<profile>
<id>Release</id>
<build>
<finalName>${artifactId}-${version}</finalName>
</build>
<properties>
<DB-URL>jdbc:mysql://...</DB-URL>
</properties>
</profile>
</profiles>
Nun hab ich noch eine ähnlich gelagerte Frage: eines der beiden Module bastelt in der Phase "package" ein Paket für Webstart-Funktion. Im Moment enthält das Webstart packet nach dem "mvn release
Da frag ich mich ob ich dieses Plugin ähnlich wie die DB-Profile in die Mutter.pom packen soll oder ob ich eine andere Phase reinschreiben kann so dass bei einem release dieses Paket eben die release.jars enthält. Also in welcher Phase des Release entstehen die release.jars - die Phase nach dieser Phase könnte ich ja in das WebStart-Plugin eintragen?!
Insgesamt hab ich noch ein unzureiuchendes Verständnis der Phasen die Maven bei den diversen goals so durchläuft. Gibt es irgendwo eine Liste wo man alle "Phasen" sieht in ihrer korrekten Reihenfolge? Ich frage mich oft wenn ich irgendein Plugin benutze, was ich für eine Phase angeben soll. Normalerweise ist der default-Wert der meisten Plugins gut manchmal eben nicht und da würde ich gerne eine Idee bekommen was eine andere sinnvolle Phase ist.
Zuletzt bearbeitet: