Maven プロパティ (プロファイルで定義) を Antrun 実行に渡そうとしています:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<dependencies>
<!-- ... these are ok -->
</dependencies>
<executions>
<execution>
<configuration>
<target>
<property name="ant_destDir" value="${destDir}" />
<property name="ant_serverDeploy" value="${serverDeploy}" />
<property name="ant_deployDir" value="${deployDir}" />
<property name="ant_userDeploy" value="${userDeploy}" />
<property name="ant_passwordDeploy" value="${passwordDeploy}" />
<!-- correct task definitions for sshexec and scp -->
<sshexec host="${serverDeploy}" username="${userDeploy}"
password="${passwordDeploy}" trust="yes"
command="some command" />
<scp remoteTodir="${userDeploy}@${serverDeploy}:${destDir}"
password="${passwordDeploy}" trust="yes" sftp="true">
<fileset dir="${deployDir}" includes="*.jar" />
</scp>
<sshexec host="${serverDeploy}" username="${userDeploy}"
password="${passwordDeploy}" trust="yes"
command="some command" />
</target>
</configuration>
<phase>install</phase>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
次のように、プロパティはプロファイルで定義され、さまざまなサーバーでの展開を可能にします (これが最善の方法ではないことはわかっていますが、これがここでの方法です)。
<profile>
<id>aprofile</id>
<properties>
<property name="serverDeploy" value="somevalue" />
<property name="userDeploy" value="someuser" />
<property name="passwordDeploy" value="somepassword" />
<!-- and so on -->
</properties>
</profile>
私の問題は、Maven プロパティを ant プラグインで動作させることができないことです。ant にタスクを追加して、<echoproperties>
所有しているプロパティを確認しようとしましたが、Maven プロパティの痕跡はありません。Maven で定義されたプロパティを使用することは可能ですか、それとも別のアプローチを使用する必要がありますか? どんな提案でも大歓迎です。
編集:最初の回答に従ってスクリプトを変更しましたが、まだ機能しません