如何用Maven Assembly插件递归设置目录文件权限?
解决Maven Assembly Plugin文件权限未生效问题
你当前的配置中,第二个fileSet仅对bin目录权限生效,但目录内文件仍保持默认644权限,核心原因是未明确指定需要应用权限的文件范围。
只需在处理bin目录的fileSet中添加<includes>标签,明确匹配该目录下所有文件,即可让fileMode设置生效:
<fileSets> <fileSet> <directory>src/main/mydir</directory> <outputDirectory>/</outputDirectory> <excludes> <exclude>bin</exclude> </excludes> </fileSet> <fileSet> <directory>src/main/mydir/bin</directory> <outputDirectory>/bin</outputDirectory> <includes> <include>**/*</include> </includes> <fileMode>770</fileMode> <directoryMode>777</directoryMode> </fileSet> </fileSets>
**/*通配符会匹配bin目录下所有层级的文件和子目录,确保fileMode=770被应用到所有文件上,而directoryMode=777仅作用于目录本身。
注意:该权限设置仅在类Unix系统环境下生效,Windows系统会忽略文件权限配置。
内容的提问来源于stack exchange,提问作者David
相关产品推荐
相关产品推荐

