Maven 属性以引用程序集目录?
使用程序集插件时,似乎应该有一个公开的属性,例如${assembly.directory},通过它可以引用程序集输出目录。所谓程序集输出目录,我指的是程序集插件为您创建的程序集所在的目录;在我的例子中,我正在创建一个“dir”类型的程序集,因此输出目录就是程序集本身。在我使用汇编插件时,“目录输出汇编”是这样的:Maven 属性以引用程序集目录?,maven,maven-assembly-plugin,Maven,Maven Assembly Plugin,使用程序集插件时,似乎应该有一个公开的属性,例如${assembly.directory},通过它可以引用程序集输出目录。所谓程序集输出目录,我指的是程序集插件为您创建的程序集所在的目录;在我的例子中,我正在创建一个“dir”类型的程序集,因此输出目录就是程序集本身。在我使用汇编插件时,“目录输出汇编”是这样的: ${project.build.directory}/${artifactId}-${project.version}/${artifactId}-${project.version}
${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>
org.apache.maven.plugins
maven汇编插件
2.2-β-5
组装糠秕
包裹
仅有一个的
错误的
src/main/assembly/myAssembly.xml
但是,在我需要引用程序集输出位置的所有地方,这显然是一件令人讨厌的事情
是的,但是我不认为插件会为你提供它。我有一个类似的问题,并以这种方式解决了它(不理想,但嘿):
${project.build.directory}/${artifactId}-${project.version}/${artifactId}-${project.version}
并在整个过程中使用${myAssemblyOutput}。你所说的“汇编目录”是什么意思?您是指默认情况下存储结果的目录,还是指找到描述符的目录?也许你能给出一个更好地描述你的问题的pom示例?我不确定我是否理解你的正确性,但这听起来像是你需要的汇编描述符,或者可能是组件描述符……但问题是为什么你需要用这种方式定义目录?也许你可以给出一个定义你想要达到的目标的pom作为例子…顺便说一下:maven汇编插件有一个更新的2.3版本。或者你是说汇编插件的outputDirectory?我是说outputDirectory。我的问题不是配置汇编插件,而是引用汇编插件放置它构建的汇编的位置。嗯,那我就没办法了。但你为什么需要这些信息呢。${project.build.directory}作为插件配置的默认值,在outputDirectory中使用,所以问题是为什么需要它本身?(听起来像是循环依赖;-)我怀疑这是我能做的最好的了。我只是想知道莫霍是否会暴露出一些没有记录的财产。
<properties>
<myAssemblyOutput>${project.build.directory}/${artifactId}-${project.version}/${artifactId}-${project.version}</myAssemblyOutput>
</properties>