Maven Run Project

Existe uma “fase” ou “meta” do Maven para simplesmente executar o método principal de uma class Java? Eu tenho um projeto que gostaria de testar manualmente simplesmente fazendo algo como “mvn run”.

Veja o plugin exec maven . Você pode executar classs Java usando:

mvn exec:java -Dexec.mainClass="com.example.Main" [-Dexec.args="argument1"] ... 

A chamada pode ser tão simples quanto mvn exec:java se a configuração do plugin estiver em seu pom.xml. O site de plugins no Mojohaus tem um exemplo mais detalhado .

     org.codehaus.mojo exec-maven-plugin 1.2.1  com.example.Main  argument1       

As respostas acima mencionadas estão corretas, mas estou simplificando para noobs como eu. Vá para o arquivo pom do seu projeto. Adicione uma nova propriedade exec.mainClass e dê seu valor como a class que contém seu método principal. Para mim foi DriverClass no mainpkg . Altere-o de acordo com o seu projeto. insira a descrição da imagem aqui

Feito isso, navegue até a pasta que contém o pom.xml do seu projeto e execute-a no prompt de comando mvn exec:java . Isso deve chamar o método principal.

Experimente o plugin do Exec Maven

Não há necessidade de adicionar novo plugin em pom.xml. Apenas execute este comando

 mvn org.codehaus.mojo:exec-maven-plugin:1.5.0:java -Dexec.mainClass="com.example.Main" | grep -Ev '(^\[|Download\w+:)' 

Veja o plugin maven exec para mais uso.

1. Editar POM.xml

Adicione a seguinte propriedade em pom.xml , certifique-se de usar o nome completo da class (ou seja, com o nome do pacote) que contém o método main .

  ${fully-qualified-class-name}  

2. Comando Executar

Agora do gatilho do terminal seguindo o comando –

 mvn clean compile exec:java 

OBSERVAÇÃO Você pode transmitir argumentos adicionais através do -Dexec.args="xxx"

clean package exec:java -P Class_Containing_Main_Method comando clean package exec:java -P Class_Containing_Main_Method também é uma opção se você tiver apenas um método Main (PSVM) no projeto, com a seguinte configuração do Maven.

Não se esqueça de mencionar a class na seção do pom.xml :

  UTF-8 com.test.service.MainTester   org.codehaus.mojo exec-maven-plugin 1.2.1  ${java.main.class}   

STS Run Configuration juntamente com o Maven Setup acima:

insira a descrição da imagem aqui