2011-12-30 6 views

Odpowiedz

375

-Darguments="-DskipTests" to, czego chcesz, lub jawnie konfiguracja rozwidlonych wykonań w pom.

+1

To działa dla mnie, dziękuję i +1 ale ... Czy to konieczne? – javamonkey79

+4

IT jest konieczne, ponieważ proces zwalniania przedstawia nowy proces maven, a testy tpical -DskipTests nie są przekazywane jako właściwości systemu. – Eddie

+4

Chciałbym móc głosować "2" w górę. Spędziłem wiele godzin próbując to naprawić ... ale 1. Czy czegoś mi brakowało w dokumentacji, czy też dokumentacja mvn czegoś pomija? 2. Miałem \t \t ' true' skonfigurowane w mojej firmie POM. Nadal nie działa. To, co zadziałało, było twoim rozwiązaniem. –

18

Jeśli chcesz po prostu przejść testy integracyjne, będzie to zrobić:

-Darguments="-DskipITs" 
36

-Darguments="..." przechodzi argumenty rozwidloną procesu maven, ale ważne jest, aby zdać sobie sprawę, że istnieją dwa różne przełączniki stosowane są tutaj. Obiekt -DskipTests zmusza maven, aby nie wykonywał żadnych testów, ale testy są nadal kompilowane (jest to ważne, jeśli masz jakieś zależności od typu pojemnika testowego). -Dmaven.test.skip=true zmusza mahona, aby nie skompilował testów, co oznacza, że ​​żadne słoiki testowe nie zostaną wygenerowane.

Należy zatem użyć -Darguments, ale aby pominąć testy z uruchomionym użyciem, należy użyć tylko skipTests, aby uniemożliwić ich kompilację przy użyciu maven.test.skip.

3

Aby przejść całą badanej jednostki, używa argumentu

-Dmaven.test.skip = true

więc jeśli chcesz pominąć test Jednostka ta rozwiąże

mvn install -Dmaven.test.skip=true 
mvn package -Dmaven.test.skip=true 

lub można zdefiniować testy pominięcia we wtyczce maven-surefire pod numerem

pom.xml

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-surefire-plugin</artifactId> 
     <version>2.12.4</version> 
     <configuration> 
     <skipTests>true</skipTests> 
     </configuration> 
</plugin> 
+2

To pytanie dotyczy konkretnie wtyczki do wydania Maven, więc nie są to cele Mavena, które zostaną użyte. – Jaap

0

Nie Maven plug-in dosłownie wyzwala kompilację testową lub wykonanie. Są to fazy cyklu życia, które uruchamiają wykonywanie jednej lub więcej wtyczek, gdy te ograniczają cele do określonej fazy.

Tak, tylko wykonując jeden cel plug-in wystarczyłoby bez wykonywania testów:

mvn release:perform 

lub połączyć z kompilacji projektu i opakowań:

mvn clean package release:perform 
Powiązane problemy