Jak mogę uruchomić wtyczkę maven-release-plugin bez wyzwalania testów?
próbowałem
-Dmaven.test.skip=true
i
-DskipTests
i
-DpreparationGoals=clean
... ale nic nie działa.
Tak, wiem, że nie powinienem publikować, jeśli testy nie przejdą, ale nie mam kontroli nad zmuszaniem moich współpracowników do pisania wiarygodnych testów.
2
. Spędziłem godziny, próbując to naprawić ... ale 1. Czy brakuje mi czegoś w dokumentacji, czy w dokumentacji mvn czegoś brakuje? 2.<skipTests>true</skipTests>
Skonfigurowałem w swojej firmie POM. Nadal nie działa. To, co zadziałało, było twoim rozwiązaniem.-Darguments="..."
przekazuje argumenty do rozwidlonego procesu maven, ale ważne jest, aby zdać sobie sprawę, że używane są tutaj dwa różne przełączniki. Te-DskipTests
siły Maven, aby nie uruchamiać żadnych testów, ale badania wciąż są opracowywane (to ważne, jeśli masz jakiekolwiek zależności od rodzaju test-jar). Te-Dmaven.test.skip=true
siły Maven nawet nie skompilować testy, co oznacza, że nie zostaną wygenerowane jakieś test-słoiki.Tak więc, musisz używać
-Darguments
, ale pomijać testy działające tylko przy użyciuskipTests
, aby zatrzymać ich kompilacjęmaven.test.skip
.źródło
Jeśli chcesz po prostu pominąć testy integracyjne, zrobisz to:
źródło
masz zbyt różne możliwości, aby uniknąć i pominąć testy z wtyczką do wydania
przykład:
mvn -X -Darguments="-Dmaven.javadoc.skip=true -Dmaven.test.skipTests=true -Dmaven.test.skip=true" -P release-mode release:prepare
-Drugi polega na wykonaniu argumentów w pliku pom.xml w kompilacji w następujący sposób:
Zwróć uwagę, że druga metoda zastępuje pierwszą.
Radziłem, abyś najpierw przygotował wydanie dla jednej akcji, a następnie możesz edytować plik release.properties na działającym obszarze i sprawdzić
exec.additionalArguments
właściwości, jeśli istnieją argumenty. Będzie to wyglądać tak:exec.additionalArguments=-Dmaven.javadoc.skip\=true -Dmaven.test.skipTests\=true -Dmaven.test.skip\=true -P release-mode
.Po wykonaniu wydania.
źródło
Aby pominąć cały test jednostkowy, używa argumentu
więc jeśli chcesz pominąć test jednostkowy, to rozwiąże
lub alternatywnie możesz zdefiniować skipTests w maven-surefire-plugin w
źródło
Żadna wtyczka Maven dosłownie nie wyzwala kompilacji lub wykonania testu. To właśnie fazy cyklu życia maven wyzwalają wykonanie (e) jednej lub więcej wtyczek, jeśli mają one ograniczone cele do określonej fazy.
Zatem samo wykonanie jednego celu wtyczki wystarczyłoby bez wykonywania testów:
lub połącz z budowaniem projektu i pakowaniem
źródło