maven-assembly-plugin 在 zip 的根级别包含 *.properties
maven-assembly-plugin include *.properties at root level of zip
我试图让 Maven 在压缩我的工件时包含我的 *.properties
文件。它们位于 src/main/resources
内。我尝试将 fileSet
元素添加到我的程序集文件中,但资源未包含在 zip 中。我看到 this question 这似乎表明添加 fileSet
应该有效。
plugins.xml:
<?xml version="1.0"?>
<assembly>
<id>release</id>
<formats>
<format>zip</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<fileSets>
<fileSet>
<directory>${project.build.directory}</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>*.properties</include>
</includes>
</fileSet>
</fileSets>
<dependencySets>
<dependencySet>
<outputDirectory>/</outputDirectory>
<useProjectArtifact>true</useProjectArtifact>
<useTransitiveFiltering>true</useTransitiveFiltering>
</dependencySet>
</dependencySets>
</assembly>
您想包含在 ZIP 中的属性位于项目的 src/main/resources
源目录中。所以 <fileSet>
元素应该指向这个目录。
${project.build.directory}
为Maven当前构建目录,默认为target
。您还可以指向 Maven 在构建期间复制所有资源的临时目录,但最好尽可能坚持使用永久数据。
因此,您只需将 <fileSet>
元素更改为:
<directory>src/main/resources</directory>
我试图让 Maven 在压缩我的工件时包含我的 *.properties
文件。它们位于 src/main/resources
内。我尝试将 fileSet
元素添加到我的程序集文件中,但资源未包含在 zip 中。我看到 this question 这似乎表明添加 fileSet
应该有效。
plugins.xml:
<?xml version="1.0"?>
<assembly>
<id>release</id>
<formats>
<format>zip</format>
</formats>
<includeBaseDirectory>false</includeBaseDirectory>
<fileSets>
<fileSet>
<directory>${project.build.directory}</directory>
<outputDirectory>/</outputDirectory>
<includes>
<include>*.properties</include>
</includes>
</fileSet>
</fileSets>
<dependencySets>
<dependencySet>
<outputDirectory>/</outputDirectory>
<useProjectArtifact>true</useProjectArtifact>
<useTransitiveFiltering>true</useTransitiveFiltering>
</dependencySet>
</dependencySets>
</assembly>
您想包含在 ZIP 中的属性位于项目的 src/main/resources
源目录中。所以 <fileSet>
元素应该指向这个目录。
${project.build.directory}
为Maven当前构建目录,默认为target
。您还可以指向 Maven 在构建期间复制所有资源的临时目录,但最好尽可能坚持使用永久数据。
因此,您只需将 <fileSet>
元素更改为:
<directory>src/main/resources</directory>