不工作,我有這樣的目錄結構的Maven插件屬性 - 在繼承
root
|- pom.xml
|- submodule1
|- pom.xml
|- project.properties
|- subsubmodules
|-pom.xml
Submodule1從根繼承和subsubmodules從submodule1繼承
Subsubmodules具有使用性能從submodule1的project.properties到依賴性已經定義了它的版本。 即Subsubmodules
<dependency>
<groupId>some.org</groupId>
<artifactId>someartifact</artifactId>
<version>${themodules.version}</version>
</dependency>
在Submodule1的project.properties,我已經
themodules.version = 1.0
因此,我通過在根pom.xml中定義它使用的屬性-行家-插件
<project>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
<executions>
<execution>
<phase>initialize</phase>
<goals>
<goal>read-project-properties</goal>
</goals>
<configuration>
<files>
<!-- *edited from earlier post <file>etc/config/dev.properties</file>-->
<file>${basedir}/project.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
然後我在根目錄下運行mvn install。 Maven說它無法解析依賴關係中的$ {themodules.version}。
我也在子模塊級別運行mvn install,它仍然無法解析。
幫助請
對不起,我在根pom.xml中添加爲 $ {basedir} /project.properties ,並假定它將繼承到子模塊pom模型。因此它應該讀取子模塊中的project.properties。這個假設是不正確的?鑑於繼承工作是自下而上的方法,父母很難確切地知道他們的子女是誰,以及project.properties文件的確切位置在子女 –
ALQH
2012-01-12 22:05:26
@ALQH內,因此沒有關於屬性文件繼承的概念,您只需要告訴properties-maven-plugin哪裏是讀取屬性文件的確切位置。 – yorkw 2012-01-12 22:10:38
我在根目錄pom.xml中聲明,但是當我運行mvn install時,它仍然無法傳遞在subsubmodules中用作依賴版本的$ {themodules.version}。它說dependency.dependency.version無效。 – ALQH 2012-01-13 01:34:37