2016-03-29 8 views
0

Ich habe ein wenig project in Kotlin geschrieben. Wenn ich clean compile assembly:single install laufen lasse, erhalte ich folgende Fehlermeldung:Warum bekomme ich "Keine Assembly-Deskriptoren gefunden." Fehler beim Erstellen dieses Projekts?

Failed to execute goal org.apache.maven.plugins:maven-assembly-plugin:2.2-beta-5:single 
(default-cli) on project alma-econsim: Error reading assemblies: No assembly 
descriptors found. -> [Help 1] 

Mein jar-with-dependencies.xml in src/main/assembly befindet und in pom.xml wie folgt verwiesen:

<plugin> 
    <artifactId>maven-assembly-plugin</artifactId> 
    <version>2.2-beta-5</version> 
    <executions> 
     <execution> 
      <id>assembly</id> 
      <goals> 
       <goal>single</goal> 
      </goals> 
      <phase>package</phase> 
      <configuration> 
       <descriptors> 
        <descriptor>src/main/assembly/jar-with-dependencies.xml</descriptor> 
       </descriptors> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

Aber ich immer noch den Fehler. Wie kann ich mein Projekt korrigieren, um es als jar mit Abhängigkeiten zu packen?

Antwort

9

zunächst eine uptodate Version von maven-assembly-plugin verwenden und nicht eine alte Version ... Außerdem sollten Sie es über mvn clean package Ursache nennen Sie die Maven-Montage-Plugin zum package Lebenszyklusphase gebunden ... wenn Sie versuchen, mvn ... assembly:single zu tun Sie werden nicht den Lebenszyklus ruft ... Abgesehen davon, dass Sie jar-with-dependencies Descriptor verwenden möchten, als Sie das wie folgt tun sollten:

von
<project> 
    [...] 
    <build> 
    [...] 
    <plugins> 
     <plugin> 
     <!-- NOTE: We don't need a groupId specification because the group is 
      org.apache.maven.plugins ...which is assumed by default. 
     --> 
     <artifactId>maven-assembly-plugin</artifactId> 
     <version>2.6</version> 
     <configuration> 
      <descriptorRefs> 
      <descriptorRef>jar-with-dependencies</descriptorRef> 
      </descriptorRefs> 
     </configuration> 
     [...] 
</project> 

Apart, dass, wenn Sie Maven wie folgt aufrufen:

mvn clean compile assembly:single install 

als Sie die Kompilierung Phase doppelt, verursachen nur einfach ein Aufruf:

mvn clean install 

ausreichend ist. Ich kann empfehlen, die build life doc.

zu lesen