Como posso executar o maven-release-plugin sem executar os testes?
eu tentei
-Dmaven.test.skip=true
e
-DskipTests
e
-DpreparationGoals=clean
... ainda nenhum trabalho.
Sim, eu sei que não devo liberar se os testes não passarem, mas não tenho controle sobre como fazer meus colegas de trabalho escreverem testes confiáveis.
2
. Passei horas tentando acertar isso ... mas 1. Perdi alguma coisa na documentação ou está faltando alguma documentação na MVN? 2. Eu havia<skipTests>true</skipTests>
configurado no POM da minha empresa. Ainda não funcionou. O que funcionou foi a sua solução.-Darguments="..."
transmite argumentos para o processo de bifurcação bifurcada, mas é importante perceber que existem duas opções diferentes sendo usadas aqui. As-DskipTests
forças tentam não executar nenhum teste, mas os testes ainda são compilados (isso é importante se você tiver alguma dependência de um tipo de jar de teste). As-Dmaven.test.skip=true
forças tentaram nem mesmo compilar os testes, o que significa que quaisquer frascos de teste não serão gerados.Portanto, você deve usar
-Darguments
, mas para ignorar os testes executando apenas o usoskipTests
, para impedi-los de compilar o usomaven.test.skip
.fonte
Se você apenas quiser pular os testes de integração, isso será feito:
fonte
você tem opções muito diferentes para evitar e pular testes com o plug-in de lançamento
exemplo:
mvn -X -Darguments="-Dmaven.javadoc.skip=true -Dmaven.test.skipTests=true -Dmaven.test.skip=true" -P release-mode release:prepare
-O segundo é executar esses argumentos no seu pom.xml na compilação assim:
Observe que o segundo método substitui o primeiro.
Eu recomendo que você prepare o release primeiro em uma única ação e, em seguida, você pode editar o arquivo release.properties no diretório de trabalho e procurar as
exec.additionalArguments
propriedades se seus argumentos estiverem lá. Será algo como:exec.additionalArguments=-Dmaven.javadoc.skip\=true -Dmaven.test.skipTests\=true -Dmaven.test.skip\=true -P release-mode
.Depois que você pode executar o lançamento.
fonte
Para pular todo o teste de unidade, ele usa o argumento
então, se você quiser pular o teste de unidade, isso resolverá
ou, alternativamente, você pode definir skipTests no maven-surefire-plugin em
fonte
Nenhum plug-in maven literalmente aciona a compilação ou execução de teste. São as fases do ciclo de vida que desencadeiam a execução de um ou mais plug-ins, quando estes limitam os objetivos a uma fase específica.
Portanto, apenas executar uma única meta de plug-in seria suficiente sem executar testes:
ou combinar com a construção e o empacotamento do projeto:
fonte