Ich versuche, mehrere Maven-Profile in einem einzelnen Jenkins-Job zu erstellen. Jedes Profil ändert etwas Code und erstellt dann ein Glas durch Ausführen von mvn -Pdev install
dann mvn -Pprod install
in der Befehlszeile (Laut Maven mit mvn -Pdev,prod install
soll funktionieren, aber es funktioniert nicht für mich). Hier sind die beiden Profile in meinem Projekt pom.xml
:Erstellen mehrerer Maven-Profile für einen einzelnen Jenkins-Job
<profiles>
<!-- prod profile -->
<profile>
<id>prod</id>
<build>
<plugins>
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<version>1.5.2</version>
<executions>
<execution>
<phase>process-resources</phase>
<goals>
<goal>replace</goal>
</goals>
</execution>
</executions>
<configuration>
<file>src/main/java/com/IQzone/android/configuration/AbstractHoldingRefreshable.java</file>
<replacements>
<replacement>
<token>TrUe</token>
<value>TOAST_SWITCH</value>
</replacement>
</replacements>
</configuration>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>prod</classifier>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<!-- dev profile -->
<profile>
<id>dev</id>
<build>
<plugins>
<plugin>
<groupId>com.google.code.maven-replacer-plugin</groupId>
<artifactId>replacer</artifactId>
<version>1.5.2</version>
<executions>
<execution>
<phase>process-resources</phase>
<goals>
<goal>replace</goal>
</goals>
</execution>
</executions>
<configuration>
<file>src/main/java/com/IQzone/android/configuration/AbstractHoldingRefreshable.java</file>
<replacements>
<replacement>
<token>TOAST_SWITCH</token>
<value>TrUe</value>
</replacement>
</replacements>
</configuration>
</plugin>
<!-- build project with JAVA 1.6 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
</configuration>
</plugin>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>jar</goal>
</goals>
<configuration>
<classifier>dev</classifier>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
Wie würde ich Setup Jenkins automatisch baut beiden Profile für einen einzelnen Jenkins Job, wenn der Job für einen Build getroffen wird? Und stelle diese beiden Gläser in das Artefakt? Ich habe sehr wenig Jenkins Wissen und es gibt nicht viele Informationen darüber im Internet.
Ich habe ein Problem, das wenig ähnlich ist.Ich habe in diesen Link gesetzt, können Sie bitte einen Blick darauf werfen und lassen Sie mich wissen, wenn Sie irgendeine Lösung haben. https://stackoverflow.com/questions/48002535/one-profile-properties-are-riding-with-another-profile-properties-in-maven – SubbaReddy