Java Maven-在依赖项中使用版本

Java Maven-在依赖项中使用版本,java,maven,dependencies,Java,Maven,Dependencies,我有一个新的应用程序,pom有父标签和所有。我必须在此应用程序中包含另一个依赖项,其父项与当前应用程序的父项不同。问题是新依赖项的版本标记 当前的pom: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi

我有一个新的应用程序,pom有父标签和所有。我必须在此应用程序中包含另一个依赖项,其父项与当前应用程序的父项不同。问题是新依赖项的版本标记

当前的pom:

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">

  <modelVersion>4.0.0</modelVersion>

  <parent>
    <artifactId>abc-pom</artifactId>
    <groupId>com.abc</groupId>
    <version>4.480.0-SNAPSHOT</version>
    <relativePath>../../pom.xml</relativePath>
  </parent>

  <groupId>com.abc.libs</groupId>
  <artifactId>dynamixSession</artifactId>
  <packaging>jar</packaging>
  <name>dynamixSession</name>

    .....
    .....

<dependency>
    <groupId>com.pqr.someOtherProject</groupId>
    <artifactId>SomeCoreProcessing</artifactId>
    <version>4.2.14.2-SNAPSHOT</version>
    <!--      <version>${project.version}</version>-->
    <scope>provided</scope>
</dependency>

4.0.0
abc聚甲醛
com.abc
4.480.0-快照
../../pom.xml
com.abc.libs
动态会话
罐子
动态会话
.....
.....
com.pqr.someOtherProject
某些核心处理
4.2.14.2-快照
假如
这个pom有效。由于我在这里硬编码版本号,我是否需要在每次版本更改时更新此pom?或者它会自动更新。但我怀疑它是否会自动更新。 我想使用“${project.version}”,这样我就不必更新它了。但是如果我使用“${project.version}”,它会尝试查找不存在的“com.pqr.someOtherProject.SomeCoreProcessing:4.480.0-SNAPSHOT”

有没有办法解决这个问题,或者我必须在pom中对版本进行编码


谢谢

您可以使用版本插件来实现这一点。这将是最简单的方法。这些插件特别适用于此类需求

但它不会自动更新。您需要执行版本:使用最新的快照目标

如果您使用的是持续集成工具(例如Jenkins),您可以通过夜间构建或其他方式实现自动化

只要看看下面的链接就可以看到插件版本的所有细节。它有很好的文档记录


为什么不试试{env.SomeCoreProcessing\u version}?只需确保在启动构建之前设置/导出SomeCoreProcessing\u版本变量