引用程序集目录的属性?

时间:2012-03-14 15:08:41

标签: maven maven-assembly-plugin

使用程序集插件时,似乎应该有一个公开的属性,例如$ {assembly.directory},您可以通过它引用程序集输出目录。通过程序集输出目录,我指的是程序集插件为其创建程序集的目录;在我的情况下,我正在创建一个“dir”类型程序集,因此输出目录是程序集本身。在我对程序集插件的使用中,“目录输出程序集”结果如下:

${project.build.directory}/${artifactId}-${project.version}/${artifactId}-${project.version}

但是,在我需要引用汇编输出位置的所有地方写出来这显然是一件令人讨厌的事情。我更喜欢像

这样的东西
${project.assembly.outputDirectory}

这是我的程序集插件配置:

<plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-assembly-plugin</artifactId>
                <version>2.2-beta-5</version>
                <executions>
                    <execution>
                        <id>assemble-myStuff</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                        <configuration>
                            <appendAssemblyId>false</appendAssemblyId>
                            <descriptors>
                                <descriptor>src/main/assemble/myAssembly.xml</descriptor>
                            </descriptors>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

1 个答案:

答案 0 :(得分:0)

  

但是,在我需要引用汇编输出位置的所有地方写出这显然是一件令人讨厌的事情。

是的,但我不认为该插件会为您提供。我有一个类似的问题并以这种方式解决(不理想,但嘿):

<properties>
   <myAssemblyOutput>${project.build.directory}/${artifactId}-${project.version}/${artifactId}-${project.version}</myAssemblyOutput>
</properties>

并始终使用$ {myAssemblyOutput}。