解压缩位于磁盘上的文件(maven-assembly-plugin)
Unzip a file located on disk (maven-assembly-plugin)
我正在尝试输出 运行 项目所需的所有文件到 ./target/dist
文件夹中。我想在准备程序集时捆绑 JRE。 JRE 位于我的项目的基本目录中,包含在一个名为 jre.zip
.
的 zip 文件中
如何在./target/dist
文件夹中解压./jre.zip
?
这是我的程序集 XML。
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
<id>dist</id>
<formats>
<format>dir</format>
</formats>
<baseDirectory>./</baseDirectory>
<fileSets>
<fileSet>
<directory>./</directory>
<outputDirectory>./jre</outputDirectory>
<excludes>
<exclude>*/**</exclude>
</excludes>
</fileSet>
</fileSets>
<files>
<file>
<source>${project.build.directory}/${project.build.finalName}.jar</source>
<destName>${artifactId}.jar</destName>
<outputDirectory>./</outputDirectory>
</file>
</files>
</assembly>
虽然您可以使用 Maven Assembly 插件解压依赖项,但我很怀疑它不能与 jre 一起工作....
我建议你在执行 Assembly 插件之前先解压 jre
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>prepare</id>
<phase>validate</phase>
<configuration>
<tasks>
<echo message="prepare phase" />
<unzip src="jre.zip" dest="target/jre"/>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
我正在尝试输出 运行 项目所需的所有文件到 ./target/dist
文件夹中。我想在准备程序集时捆绑 JRE。 JRE 位于我的项目的基本目录中,包含在一个名为 jre.zip
.
如何在./target/dist
文件夹中解压./jre.zip
?
这是我的程序集 XML。
<assembly xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.3 http://maven.apache.org/xsd/assembly-1.1.3.xsd">
<id>dist</id>
<formats>
<format>dir</format>
</formats>
<baseDirectory>./</baseDirectory>
<fileSets>
<fileSet>
<directory>./</directory>
<outputDirectory>./jre</outputDirectory>
<excludes>
<exclude>*/**</exclude>
</excludes>
</fileSet>
</fileSets>
<files>
<file>
<source>${project.build.directory}/${project.build.finalName}.jar</source>
<destName>${artifactId}.jar</destName>
<outputDirectory>./</outputDirectory>
</file>
</files>
</assembly>
虽然您可以使用 Maven Assembly 插件解压依赖项,但我很怀疑它不能与 jre 一起工作....
我建议你在执行 Assembly 插件之前先解压 jre
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>prepare</id>
<phase>validate</phase>
<configuration>
<tasks>
<echo message="prepare phase" />
<unzip src="jre.zip" dest="target/jre"/>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>