É possível passar argumentos da linha de comando para propriedades no pom.xml
arquivo? por exemplo eu corromvn ... argument
e em pom.xml
<properties>
<myproperty> here should add argument from command line</myproperty>
</properties>
Obrigado pela ajuda.
Respostas:
Para o seu exemplo de propriedade, faça:
Observe as citações em torno da definição de toda a propriedade. Você precisará deles se sua propriedade contiver espaços.
fonte
mvn clean install "-Dprop1=value1" "-Dprop2=value2"
Dentro de pom.xml
.....
.....
.....
Neste exemplo, ao executar o pom sem nenhum argumento,
mvn clean install
o perfil padrão será executado.Quando executado com
mvn -Denv=win64 clean install
O perfil win64 será executado.
Consulte http://maven.apache.org/guides/introduction/introduction-to-profiles.html
fonte
Usei o plugin de propriedades para resolver isso.
As propriedades são definidas no pom e gravadas em um arquivo my.properties, onde podem ser acessadas a partir de seu código Java.
No meu caso, é o código de teste que precisa acessar esse arquivo de propriedades, portanto, no pom, o arquivo de propriedades é gravado no testOutputDirectory do maven:
Use outputDirectory se desejar que as propriedades sejam acessíveis pelo código do seu aplicativo:
Para aqueles que procuram um exemplo mais completo (precisei mexer um pouco para fazer isso funcionar, pois não entendia como a nomenclatura de tags de propriedades afeta a capacidade de recuperá-los em outro lugar no arquivo pom), meu pom tem a seguinte aparência:
E na linha de comando:
Portanto, essas propriedades podem ser acessadas a partir do código Java:
fonte
Você pode dar nomes de variáveis como arquivos de projeto. Por exemplo, na configuração do seu plugin, dê apenas uma tag como abaixo: -
Então, na linha de comando, você pode passar o nome do projeto como parâmetro: -
fonte
Então, usando assim em POM.xml
fonte