Domanda

io sto usando Maven montaggio plug-in per il confezionamento di un file jar. Ma quando ho eseguito mvn package, esperto di sempre attivare la [jar: jar {esecuzione: default-jar}] per creare un file jar di default. Così avrò 2 file jar (quello creato da montaggio plug-in e uno creato da vaso Maven che io non voglio essere creata). Come posso disattivare l'esecuzione:. Default-jar

nel mio pom.xml, sto usando: <packaging>jar</packaging>. Non voglio cambiarlo in <packaging>pom</packaging>.

È stato utile?

Soluzione

  

(...) Così avrò 2 file jar (uno creato da montaggio plug-in e un vaso creato da Maven, che io non voglio essere creato).

Sembra che tu sia fare le cose piuttosto complicato. Forse Maven non è lo strumento giusto nel tuo caso.

  

Come faccio a disattivare l'esecuzione:. Default-jar

È possibile impostare il <phase> dell'esecuzione corrispondente a qualcosa di sconosciuto, come none:

  <plugin>
    <artifactId>maven-jar-plugin</artifactId>
    <version>2.3.1</version>
    <executions>
      <execution>
        <id>default-jar</id>
        <phase>none</phase>
      </execution>
    </executions>
  </plugin>
  <plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.2</version>
    <configuration>
      <descriptorRefs>
        <descriptorRef>jar-with-dependencies</descriptorRef>
      </descriptorRefs>
    </configuration>
    <executions>
      <execution>
        <id>make-assembly</id>
        <!-- this is used for inheritance merges -->
        <phase>package</phase>
        <!-- append to the packaging phase. -->
        <goals>
          <goal>single</goal>
          <!-- goals == mojos -->
        </goals>
      </execution>
    </executions>
  </plugin>

Questo sembra funzionare fintanto che si sta fornendo qualcosa di diverso per essere installato, come un assemblaggio (Ho solo provato install). Ma, naturalmente, questo è un hack.

Altri suggerimenti

Anche se non è una risposta diretta alla domanda, è possibile escludere il vaso creato da vaso Maven usando <useProjectArtifact>false</useProjectArtifact>

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top