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

时间:2014-11-28 11:52:31

标签: maven readonly maven-assembly-plugin

我希望有人能够解释maven-assembly-plugin w.r.t行为的这种变化。文件权限。

这导致我们基于Eclipse的应用程序无法启动,因为Locking is not possible in the directory C:\eclipse\configuration\org.eclipse.osgi无法获取文件锁定

我捆绑到构建的程序集中的原始文件不是只读的,所以我不希望文件突然变成zip文件中的只读文件。我找不到任何可能改变这种行为的变化信息;这似乎是对我的回归,但如果它是出于任何原因故意,那么用户应该已经被告知在更新日志中发布2.5版插件的公告中的行为变化。

这可能与plexus-archiver传递依赖的升级有关,而不是maven程序集本身的升级。

BTW这是在Windows 7上。

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

配置了配置了maven-assembly-plugin的POM,

        <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>

引用程序集描述符binary.xml,它引入了一些任意文件,在本例中是构建的pom.xmlbinary.xml

<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>

0 个答案:

没有答案