Пароль для выполнения Maven

У меня есть Maven для копирования файлов на удаленный сервер, мой фрагмент кода ниже

<scp trust="true" file="myfile.txt" todir="myuser:mypassword@myserver:/remotedir">
<sshexec trust="true" failonerror="true" host="myserver" 
 username="myuser" password="mypassword" ....>

Есть ли способ избежать жесткого кодирования пароля? Хотел бы иметь подсказку во время выполнения mvn

1 ответ

Решение

Я предполагаю, что вы используете maven-antrun-plugin, потому что этот фрагмент больше похож на скрипт ant.

Как описано в этом ответе, вы можете передать свойства 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
Другие вопросы по тегам