2016-04-14 8 views
0

Ich verwende IDEA mit Maven; Ich möchte Maven-Assembly-Plugin verwenden, um eine ZIP zu generieren, die lib, bin und README hat. Ich benutze den Befehl mvn package, um den Reißverschluss zu montieren.
Aber die Zip hat nicht die run.bat oder run.sh. Meine Frage ist: Soll der Inhalt von run.bat oder run.sh von mir selbst geschrieben werden, oder wird er automatisch von Maven generiert?Maven-Assembly-Plugin generiert Zip mit Bat oder SH-Datei

Das Folgende ist ein Teil der Datei in meiner Idee mit Maven.
enter image description here

assembly.xml:

<assembly> 
<id>bin</id> 
<formats> 
    <format>zip</format> 
</formats> 
<dependencySets> 
    <dependencySet> 
     <useProjectArtifact>true</useProjectArtifact> 
     <outputDirectory>lib</outputDirectory> 
    </dependencySet> 
</dependencySets> 
<fileSets> 
    <fileSet> 
     <outputDirectory>/</outputDirectory> 
     <includes> 
      <include>README.txt</include> 
     </includes> 
    </fileSet> 
    <fileSet> 
     <directory>src/main/scripts</directory> 
     <outputDirectory>/bin</outputDirectory> 
     <includes> 
      <include>run.sh</include> 
      <include>run.bat</include> 
     </includes> 
    </fileSet> 
</fileSets> 

pom.xml:

<build> 
    <plugins> 
     <plugin> 
      <groupId>org.apache.maven.plugins</groupId> 
      <artifactId>maven-assembly-plugin</artifactId> 
      <version>2.2.1</version> 
      <configuration> 
       <descriptors> 
        <descriptor>src/main/assembly/assembly.xml</descriptor> 
       </descriptors> 
      </configuration> 
      <executions> 
       <execution> 
        <id>make-assembly</id> 
        <phase>package</phase> 
        <goals> 
         <goal>single</goal> 
        </goals> 
       </execution> 
      </executions> 
     </plugin> 
    </plugins> 
</build> 

Antwort

0

Assembly Plugin erzeugt keine Schale Umhüllungen (wie run.bar oder run.sh) für Sie - es stellt nur ein Archiv zusammen, das auf den Regeln basiert, die in assembly desriptor definiert sind.

Sie erhalten eine run.bat und run.sh auf Ihrem eigenen

+0

Vielen Dank erstellen müssen. Kann der Gradle dies tun? Generiere die Datei .bat oder .sh? –

+0

@UgeneSkywalker kein Gradle ist nur ein Build-Tool wie Maven - Sie müssen 'src/main/scripts/run.sh' und' src/main/scripts/run.cmd' manuell schreiben. – bedrin

Verwandte Themen