加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

java – Maven程序集插件chmod输出文件夹

发布时间:2020-12-15 04:54:44 所属栏目:Java 来源:网络整理
导读:我正在尝试使用像这样的maven-assembly插件来构建我的项目JAR的zip以及运行它所需的所有库: plugin groupIdorg.apache.maven.plugins/groupId artifactIdmaven-assembly-plugin/artifactId version2.2.1/version executions execution idmake-assembly/id p
我正在尝试使用像这样的maven-assembly插件来构建我的项目JAR的zip以及运行它所需的所有库:

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

我的装配看起来像:

<assembly>
    <id>jar-with-dependencies</id>
    <formats>
        <format>zip</format>
    </formats>
    <includeBaseDirectory>false</includeBaseDirectory>
    <dependencySets>
        <dependencySet>
            <unpack>false</unpack>
            <scope>runtime</scope>
            <outputDirectory>lib</outputDirectory>
            <useProjectArtifact>true</useProjectArtifact>
            <fileMode>755</fileMode>
        </dependencySet>
    </dependencySets>
    <files>
        <file>  
<source>${project.build.directory}/${project.build.finalName}.jar</source>
        </file>
    </files>
</assembly>

这适用于制作合适的拉链.

然后,dependencySet上的fileMode标志为LIB内的每个元素提供755 CHMOD.问题是,实际的LIB文件夹本身保持777.有没有办法让LIB文件夹也得到755?

让maven做一些它不想做的事情总让我伤心:(

解决方法

这真的很奇怪,但是下面的pom.xml片段会将0755模式设置为汇编的所有目录.虽然,我认为这不是非常可靠(面向未来),因为显然,maven作者打算使用众所周知的Unix八进制表示法来指定目录访问模式,而不是十进制等效.

<plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.3</version>
            <configuration>
                <archiverConfig>
                    <!-- 493D == 0755,seems to be assembly plugin bug -->
                    <defaultDirectoryMode>493</defaultDirectoryMode>
                </archiverConfig>
            </configuration>

原始信用必须在这里:https://issues.apache.org/jira/browse/MASSEMBLY-494

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读