gpt4 book ai didi

Maven:从属性文件中设置 pom.xml 中的属性

转载 作者:行者123 更新时间:2023-12-04 04:05:44 28 4
gpt4 key购买 nike

我有一个多模块项目,对不同的模块版本有很多依赖。目前版本是硬编码的,需要手动更改它们。所以我决定将它们全部放到一个属性文件中,并在项目构建期间从中获取属性值。

这是我尝试这样做的方法:

根 pom.xml

<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>
<file>./version.properties</file>
</files>
</configuration>
</execution>
</executions>
</plugin>

文件版本.属性
module1.version=1.1
module2.version=1.8
module3.version=5.4

模块 pom.xml 示例
<properties>
<module1.project.version>${module1.version}</module1.project.version>
</properties>

<parent>
<groupId>com.mymodule</groupId>
<artifactId>test</artifactId>
<version>${module1.version}</version>
<relativePath>../pom.xml</relativePath>
</parent>

构建失败:

Failed to execute goal org.codehaus.mojo:build-helper-maven-plugin:1.7:parse-version (parse-versions) on project ccm-agent: Execution parse-versions of goal org.codehaus.mojo:build-helper-maven-plugin:1.7:parse-version failed. NullPointerException -> [Help 1] org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.codehaus.mojo:build-helper-maven-plugin:1.7:parse-version (parse-versions) on project ccm-agent: Execution parse-versions of goal org.codehaus.mojo:build-helper-maven-plugin:1.7:parse-version failed.



如何从文件中读取一些属性并以正确的方式配置 pom.xml?

最佳答案

最后看起来很简单。我用了initialize阶段。将其更改为 validate修复了问题:

<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>properties-maven-plugin</artifactId>
<version>1.0-alpha-2</version>
<executions>
<execution>
<phase>validate</phase>

关于Maven:从属性文件中设置 pom.xml 中的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18574025/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com