gpt4 book ai didi

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

转载 作者:太空宇宙 更新时间:2023-11-04 06:34:23 25 4
gpt4 key购买 nike

我有一个新应用程序,其 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>

这个 pom 有效。由于我在这里硬编码版本号,每次版本更改时都需要更新此 pom 吗?还是会自动更新。但我怀疑它会自动更新。我想使用“${project.version}”,这样我就不必更新它。但是,如果我使用“${project.version}”,它会尝试查找不存在的“com.pqr.someOtherProject.SomeCoreProcessing:4.480.0-SNAPSHOT”。

有办法解决这个问题还是我坚持在我的 pom 中对版本进行编码?

谢谢

最佳答案

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

但它不会自动更新。您需要执行 versions:use-latest-snapshots 目标。

如果您使用持续集成工具(例如 Jenkins),您可以通过夜间构建或其他方式自动执行此操作。

只需查看下面的链接即可查看版本插件的所有详细信息。它有很好的文档记录。

http://mojo.codehaus.org/versions-maven-plugin/

关于java - Maven - 在依赖项中使用版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25624644/

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