将maven assembly插件的版本从2.4升级到2.5后,程序集中的文件现在是只读的

将maven assembly插件的版本从2.4升级到2.5后,程序集中的文件现在是只读的,maven,readonly,maven-assembly-plugin,Maven,Readonly,Maven Assembly Plugin,我希望有人能够解释maven汇编插件w.r.t.文件权限行为的这种变化 这导致我们基于Eclipse的应用程序无法启动,因为它无法获得文件上的锁,因为 我绑定到构建程序集中的原始文件不是只读的,因此我不希望这些文件在zip文件中突然变成只读的。我找不到任何可能改变这种行为的信息;对我来说,这似乎是一种倒退,但如果出于任何原因故意这样做,那么用户应该在changelog中发布2.5版本的插件时了解到行为的变化 这可能与plexus archiver可传递依赖项的升级有关,而不是maven asse

我希望有人能够解释maven汇编插件w.r.t.文件权限行为的这种变化

这导致我们基于Eclipse的应用程序无法启动,因为它无法获得文件上的锁,因为

我绑定到构建程序集中的原始文件不是只读的,因此我不希望这些文件在zip文件中突然变成只读的。我找不到任何可能改变这种行为的信息;对我来说,这似乎是一种倒退,但如果出于任何原因故意这样做,那么用户应该在changelog中发布2.5版本的插件时了解到行为的变化

这可能与plexus archiver可传递依赖项的升级有关,而不是maven assembly本身的升级

顺便说一句,这是在Windows7上

编辑:根据要求的简单示例:

POM配置了一个maven组装插件

        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.5</version>
            <executions>
                <execution>
                    <configuration>
                        <descriptors>
                            <descriptor>binary.xml</descriptor>
                        </descriptors>
                    </configuration>
                    <id>make-binary</id>
                    <phase>package</phase>
                    <goals>
                        <goal>single</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>

为什么不更新到2.5.2而不是2.5?您是否正确设置了fileMode/directoryMode?是的,2.5.2也有同样的问题。我不需要设置fileMode,除非我想实际更改权限,而且这似乎是Unix风格的权限,我正在Windows上构建它。您能通过示例项目显示pom文件和程序集描述符吗?(github?)。编辑我的问题以提供独立的示例:-)为什么不像
??
那样定义要包含在zip中的文件夹,并通过
/
定义输出目录?
<assembly
    xmlns="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/plugins/maven-assembly-plugin/assembly/1.1.0 http://maven.apache.org/xsd/assembly-1.1.0.xsd">

    <id>binary</id>
    <formats>
        <format>zip</format>
    </formats>

    <fileSets>
        <fileSet>
            <directory></directory>
            <outputDirectory></outputDirectory>
            <includes><include>**</include></includes>
        </fileSet>
    </fileSets>

</assembly>