My pom.xml
выполняет задачу Ant для развертывания файла с использованием FTP. Однако это развертывание должно выполняться только в том случае, если в команде Maven указан аргумент -Dftp=true
(т.е. mvn clean install -Dftp=true
). Таким образом, я написал следующий код:
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.2</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>run</goal>
</goals>
<configuration>
<tasks if="ftp">
<echo message="Deploying files through FTP..."/>
...
</tasks>
</configuration>
</execution>
</executions>
При использовании этого pom.xml
задача Ant не будет выполнена, если я не определю свойство -Dftp
в моей команде Maven. Однако, если я задаю какое-либо значение для этого свойства, например -Dftp=false
, запускается задача Ant, что неверно.
Как настроить задачу AntRun для запуска, только если заданное свойство имеет заданное значение?
пс: я знаю, что могу использовать profile
, который активен только тогда, когда ftp
равен true
. Это решение работает, но по какой-то причине я хочу иметь свой плагин Antrun build
block.
<profiles>
<profile>
<id>deployment</id>
<activation>
<activeByDefault>false</activeByDefault>
<property>
<name>ftp</name>
<value>true</value>
</property>
</activation>
<build>
<plugins>
<plugin>
... (define the Ant task here)