我有Maven可以将文件复制到远程服务器,下面是我的代码段
<scp trust="true" file="myfile.txt" todir="myuser:mypassword@myserver:/remotedir">
<sshexec trust="true" failonerror="true" host="myserver"
username="myuser" password="mypassword" ....>
有没有办法避免对密码进行硬编码?想要在执行mvn
答案 0 :(得分:1)
我假设您使用了maven-antrun-plugin,因为此代码段看起来更像是一个蚂蚁脚本。
如this answer中所述,您可以将maven属性传递给maven-antrun-plugin:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.7</version>
<executions>
<execution>
<id>compile</id>
<phase>compile</phase>
<configuration>
<target>
<property name="antProperty" value="${my.custom.property}"/>
<echo message="Custom Ant Property is: ${antProperty}"/>
<echoproperties />
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
您现在可以通过命令行将属性值传递给Maven构建:
mvn compile -Dmy.custom.property=hello