Maven 程序集插件生成带有 bat 或 sh 文件的 zip

Maven assembly plugin generate zip with bat or sh file

我正在将 IDEA 与 Maven 结合使用;我想使用 maven-assembly-plugin 生成一个包含 lib、bin 和 README 的 zip。我使用命令 mvn package 到 assemble zip.
但是 zip 没有 run.bat 或 run.sh。我的问题是: run.bat 或者 run.sh 的内容应该自己写,还是Maven自动生成?

以下是我的 IDEA 中的 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>

Assembly 插件不会为您生成任何 shell 包装器(如 run.bar 或 run.sh)- 它只是 assembles 一个基于规则定义的存档assemble描述符。

您必须自己创建 run.batrun.sh