У меня есть веб-проект maven, и я использую профили в pom.xml для создания файлов .war для разных сред.Посмотрите пример ниже из моего pom.xml
...
<profiles>
<!-- DEVELOPMENT PROFILE -->
<profile>
<id>development</id>
...
<build>
...
<plugin>
<groupId>com.google.code.echo-maven-plugin</groupId>
<artifactId>echo-maven-plugin</artifactId>
...
<configuration>
<message>Message 1</message>
</configuration>
...
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<webXml>src/main/webapp/WEB-INF/web-development.xml</webXml>
</configuration>
</plugin>
...
</build>
</profile>
<!-- PRODUCTION PROFILE -->
<profile>
<id>production</id>
...
<build>
...
<plugin>
<groupId>com.google.code.echo-maven-plugin</groupId>
<artifactId>echo-maven-plugin</artifactId>
...
<configuration>
<message>Message 2</message>
</configuration>
...
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<webXml>src/main/webapp/WEB-INF/web-production.xml</webXml>
</configuration>
</plugin>
</build>
</profile>
</profiles>
Однако, это делает мой pom.xml довольно большим - у меня 5 разных профилей.Все, что я хотел сделать, это отобразить пользовательское сообщение и использовать пользовательский файл web.xml на основе профиля.Есть ли способ добавить условия в файл pom.xml, чтобы упростить его, как показано ниже:
...
<profiles>
<profile>
<id>development</id>
...
</profile>
<profile>
<id>production</id>
...
</profile>
<profiles>
<build>
...
<plugin>
<groupId>com.google.code.echo-maven-plugin</groupId>
<artifactId>echo-maven-plugin</artifactId>
<version>1.0.0</version>
<inherited>false</inherited>
<configuration>
<IF CONDITION TO CHECK IF development PROFILE>
<message>Message 1</message>
</IF CONDITION>
<ELSE CASE>
<message>Message 2</message>
<ELSE CASE>
</configuration>
<executions>
<execution>
<goals>
<goal>echo</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
<configuration>
<IF CONDITION TO CHECK IF development PROFILE>
<webXml>src/main/webapp/WEB-INF/web-development.xml</webXml>
</IF CONDITION>
<ELSE CASE>
<webXml>src/main/webapp/WEB-INF/web-production.xml</webXml>
<ELSE CASE>
</configuration>
</plugin>
...
</build>