2014-10-29 27 views
6

Domyślnie w moim projekcie POM zostanie wykonane exec-maven-plugin, rpm-maven-plugin, , które nie jest wymagane w lokalnej kompilacji/kompilacji.Pomiń exec-maven-plugin z Argumentu linii poleceń w Maven

Chcę pominąć wykonywanie tych wtyczek, przekazując Argumenty wiersza polecenia Próbowałem poniższego polecenia, aby je pominąć, tak jak zwykłe wtyczki, ale nie działało!

mvn zainstalować -Dmaven.test.skip = true -Dmaven.exec.skip = true -Dmaven.rpm.skip = true

Odpowiedz

13

Ten page powinien powiedzieć, że nazwa argumentu do przekazania przez cmdline (tj. właściwość użytkownika) nazywa się skip, co jest źle wybraną nazwą. Aby rozwiązać ten problem należy wykonać następujące czynności:

<properties> 
    <maven.exec.skip>false</maven.exec.skip> <!-- default --> 
</properties> 
... 
<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>exec-maven-plugin</artifactId> 
    <version>1.3.2</version> 
    <configuration> 
    <skip>${maven.exec.skip}</skip> 
    </configuration> 
</plugin> 
+0

dzięki za to. jakoś tęskniłem za tym. Czy możesz mi również powiedzieć o dodatku rpm-maven-plugin? Widziałem ich stronę projektu, nie mogłem nic znaleźć :( – Reddy

+0

rpm-maven-plugin nie ma właściwości pominięcia, dlatego nie możesz jej znaleźć AFAIK rpm to wynik końcowy/pakietowy, więc zastanawiam się jeśli to ma sens, aby go pominąć, IMHO, w większości przypadków, jeśli chcesz pominąć pewne rzeczy, jest to znak, że albo twój proces, albo struktura/hierarchia pom jest błędna –

+1

To nie działa w lokalnym MacBooku. ma problemy z Mac OS i po prostu chcę pominąć dla lokalnych kompilacji – Reddy

0

Korzystanie z profili (jak najmniejszy) i faza realizacji można osiągnąć to, co chcesz dla wtyczek, które NIE obsługiwać właściwość Przeskoczyć:

konfiguracja wtyczki:

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>rpm-maven-plugin</artifactId> 
    <executions> 
     <execution> 
      <phase>${rpmPackagePhase}</phase> 
      <id>generate-rpm</id> 
      <goals> 
       <goal>rpm</goal> 
      </goals> 
     </execution> 
    </executions> 
    <configuration> 
    ... 
    </configuration> 
</plugin> 
konfiguracja

Profil:

<profiles> 
    <profile> 
     <id>default</id> 
     <activation> 
      <activeByDefault>true</activeByDefault> 
     </activation> 
     <properties> 
      <rpmPackagePhase>none</rpmPackagePhase> 
     </properties> 
    </profile> 
    <profile> 
     <id>rpmPackage</id> 
     <activation> 
      <property> 
       <name>rpm.package</name> 
       <value>true</value> 
      </property> 
     </activation> 
     <properties> 
      <rpmPackagePhase>package</rpmPackagePhase> 
     </properties> 
    </profile> 
</profiles> 

Inwokacja:

mvn package -Drpm.package=true [...]