6.3 如何用代码在Maven pom.xml检索版本?| Java Debug 笔记

219 阅读1分钟

本文正在参加「Java主题月 - Java Debug笔记活动」,详情查看<活动链接>

提问:如何用代码在Maven pom.xml检索版本?

从Maven的pom.xml中以代码方式(即以编程方式)检索版本号的最简单方法是什么?

回答1:

假设您正在使用Java,则可以:

1, (最常见的情况是这个位置)在src / main / resources目录中创建一个.properties文件。(但在第4步中,您可以告诉它在其他位置查找)。 2, 使用项目版本的标准Maven属性在.properties文件中设置某些属性的值:

foo.bar=${project.version}

3, 在Java代码中,将属性文件中的值作为类路径中的资源加载(有关如何执行此操作的示例,请参见google)。

4,在Maven中,启用资源过滤。这将使Maven将文件复制到您的output classes(我记得是个文件夹)中,并在该复制过程中翻译资源,从而解释属性。您可以在此处找到一些信息,但是您大多只是在pom中执行此操作:

<build>
  <resources>
    <resource>
      <directory>src/main/resources</directory>
      <filtering>true</filtering>
    </resource>
  </resources>   
</build>

您还可以访问其他标准属性,例如project.name,project.description或甚至放在pom 等中的任意属性。资源过滤与Maven配置文件相结合,可以在构建时为您提供可变的构建行为。 在运行时使用-PmyProfile指定配置文件时,可以启用随后可以显示在构建中的属性。

文章翻译至 Stack Overflow : stackoverflow.com/questions/3…