如何使用版本 Maven 插件更新依赖同级模块的版本

2024-03-23

我在更新依赖同级项目的依赖版本时遇到问题。

我的简化项目设置如下。

root
|--parent
|--tool-core
|--tool
|--functional-tests

父项目拥有所有全局属性和依赖管理。功能测试取决于工具,而工具又取决于工具核心。根pom.xml仅聚合(指定是否包含功能测试),父项目是所有项目的父项目。我不知道这是否微不足道,但父级不包含在聚合中,因为它已经是每个子项目的父级。

现在,我的问题是如果我更改工具的版本versions:set。工具版本已更改,但对该工具的任何依赖项均未更改。我该怎么做?我已经或多或少地随机尝试过其他目标,并且我确实尝试阅读手册。

我已经尝试过使用<dependencyManagement>部分并使用父版本中的版本属性,但这些不会更新到新版本。

非常感谢任何帮助。

Addition

我最多收到一条消息“忽略反应器依赖:com.tool:tool:jar:null:1.2.3”。这是我尝试的时候versions:use-latest-releases。然而,versions:display-dependency-updates确实表明“本地依赖项”有更新(功能测试取决于工具)。

Update

Maven 似乎会从存储库中查找新版本,包括本地版本,现在我想起来这似乎很明显。但是,这意味着在更新依赖项之前必须构建该工具并将其安装到本地存储库。

我只是想知道这是否是将集成测试作为自己的项目的正确方法。我希望有一种方法可以立即更新版本。

Update

基本上我有以下设置。版本依赖functional-tests of the tool定义为parent项目。我省略了tool-core因为它可以作为tool.

root:

<groupId>com.somecompany</groupId>
<artifactId>x-reactor</artifactId>
<packaging>pom</packaging>
<version>1.0</version>

<profiles>
    <profile>
        <id>cli</id>
        <modules>
            <module>tool</module>
        </modules>
    </profile>
    <profile>
        <id>deploy</id>
        <modules>
            <module>tool</module>
            <module>functional-tests</module>
        </modules>
    </profile>
</profiles>

parent:

<groupId>com.somecompany</groupId>
<artifactId>x-parent</artifactId>
<packaging>pom</packaging>
<version>1.0</version>

<dependencyManagement>
    <dependencies>
        <dependency>
            <groupId>com.somecompany</groupId>
            <artifactId>tool</artifactId>
            <version>3.2.3</version>
        </dependency>
    </dependencies>
</dependencyManagement>

tool:

<parent>
    <groupId>com.somecompany</groupId>
    <artifactId>x-parent</artifactId>
    <version>1.0</version>
    <relativePath>../parent/pom.xml</relativePath>
</parent>

<groupId>com.somecompany</groupId>
<artifactId>tool</artifactId>
<packaging>jar</packaging>
<version>3.2.3</version>

功能测试:

<parent>
    <groupId>com.somecompany</groupId>
    <artifactId>x-parent</artifactId>
    <version>1.0</version>
    <relativePath>../parent/pom.xml</relativePath>
</parent>

<groupId>functional-tests</groupId>
<artifactId>functional-tests</artifactId>
<version>0.1</version>
<packaging>pom</packaging>

<dependencies>
    <dependency>
        <groupId>com.somecompany</groupId>
        <artifactId>tool</artifactId>
    </dependency>
</dependencies>

我目前在“use-releases”目标中遇到了同样的问题,并且很高兴版本插件(刚才?)通过参数“支持这种情况”排除反应器=假"! :-)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用版本 Maven 插件更新依赖同级模块的版本 的相关文章

随机推荐

  • 尽管删除了 IIS,但仍然设置了 IISMAJORVERSION 和 IISMINORVERSION

    我正在创建一个依赖于正在安装的 IIS 的安装程序 为了进行测试 我使用运行 Windows Server 2008 R2 的虚拟机 该虚拟机安装了 Web 服务器角色 我的安装程序使用此条件检查是否安装了 IIS
  • 如何使用 distutils 创建可执行的 .zip 文件?

    Python 2 6 及更高版本能够直接执行 zip 文件 如果 zip 文件包含 main py文件位于 zip 存档的顶部 我想利用此功能来提供我正在开发的工具的预览版本 该工具除了将 zip 文件复制到磁盘之外不需要安装任何内容 是否
  • 使用实体框架选择所有行

    我正在尝试使用实体框架从数据库中选择所有行进行操作 然后再将其发送到表单 var ptx modelname tablename ptx tablename Select 里面有什么 我使用了实体数据源 它提供了我想做的事情所需的一切 re
  • 如何使 div 跨越网格中的多行和多列?

    建立在上一个问题 https stackoverflow com questions 42946454 alternative to css grid layout but not tables 我正在尝试向我的网格布局添加更大的块 在最后
  • 阻止 iframe 设置parent.location(防止framebusting)

    我在自己的域上有一个网站 其中我将 iframe 包含到其他域上的其他网站以进行快速预览 问题是某些网站具有框架破坏代码 可以将用户从我的网站重定向 我怎样才能阻止这个 在 Framebuster 的情况下 即使根本不显示 iframe 也
  • 在对话框外部按下时如何关闭 DialogFragment?

    我正在使用一个DialogFragment 虽然我已成功设置图像以在按下时关闭 即关闭 对话框 但当用户单击对话框之外的任何位置时 我很难找到关闭对话框的方法 就像它与普通对话框一样 我以为会有某种 dialogFragment setCa
  • 枚举作为 TypeScript 中的参数

    是否可以将参数的类型设置为 Enum 像这样 private getRandomElementOfEnum e enum string var length number Object keys e length return e Math
  • 添加适用于 Firefox Webdriver 但不适用于 PhantomJS 的 Cookie

    我有一个带有饼干的泡菜 是通过以下命令创建的 def doLogin driver do login stuff pickle dump driver get cookies open cookies pkl wb 我有获取 cookie
  • 渲染新行的 HTML 规范?

    我正在尝试将一些简单的 HTML 文档 主要包含 div 和 br 标签 呈现为纯文本 但我在何时添加新行方面遇到了困难 我以为这会很简单 div and br 生成新的线条 但看起来有各种微妙的规则 例如 div one line div
  • 如何将两组 weka 实例合并在一起

    目前 我一次将一个实例从一个数据集复制到另一个数据集 有没有办法做到这一点 使字符串映射保持完整 mergeInstances 水平工作 是否有等效的垂直合并 这是我用来将多个 arff 文件中相同结构的数据集读取到一个大型数据集中的循环的
  • 如何在JPA中定义单向OneToMany关系

    我在 JPA 中的实体映射方面遇到以下问题 我有两个实体 第一个是查找 第二个是代表实体翻译的文本 现在我需要将 Lookup 绑定到 Text 但我不希望 Text 引用 Lookup 为了使事情变得更复杂 文本在这种关系中不使用其主键
  • 将行添加到命名范围

    我在 Google 表格中有一个命名范围 A1 K14 我想做的就是在命名范围的底部添加一个新行 这似乎是一项容易的任务 使用此代码不会扩展命名范围 并且我没有收到错误消息 它确实在命名范围之外插入一个新行 这不是我想要做的 如果我改为in
  • 带有单位编号/子前提的 Google 地方自动完成建议不会出现在响应数组中

    我正在使用 Google Places API 使用 javascript 自动完成地址 当我在输入框中输入地址的单元号和街道号时 它会在建议下拉列表中显示结果 但是当我选择地址时 操作 place changed 事件的侦听器没有任何地址
  • Rails:如何向包含变音符号的收件人发送电子邮件?

    我想发送一封包含以下设置的电子邮件 def registration confirmation user recipients user username lt user email gt from Netzwerk Muensterlan
  • 内连接与何处连接

    两者之间的性能 在 Oracle 中 是否存在差异 Select from Table1 T1 Inner Join Table2 T2 On T1 ID T2 ID And Select from Table1 T1 Table2 T2
  • Hive“ANALYZE TABLE”如何从java执行

    我需要计算配置单元表中的行数 为此 我正在使用查询 ANALYZE TABLE p 7 COMPUTE STATISTICS noscan 我想通过java获取结果 我正在尝试以下操作 代码并没有运气 我得到的错误是 Exception i
  • 如何跳转到一个巨大的文本文件中的特定行?

    下面的代码是否有其他替代方案 startFromLine 141978 or whatever line I need to jump to urlsfile open filename rb 0 linesCounter 1 for li
  • 将键值对文件读入 std::map

    我有一个 Visual Studio 2008 C 03 项目 我想将键值对文件读取到 std map 中 为此 我创建了一个istreambuf pair iterator如下 typedef std map lt std string
  • 求解四变量线性方程

    问题 我需要用 Python 解这些方程 a 3b 2c 2d 1 2a b c 2d 0 3a b 2c d 1 2a c 3d 0 这样我就可以得到a b c和d的值 有没有办法可以用分数来显示它们 My code import num
  • 如何使用版本 Maven 插件更新依赖同级模块的版本

    我在更新依赖同级项目的依赖版本时遇到问题 我的简化项目设置如下 root parent tool core tool functional tests 父项目拥有所有全局属性和依赖管理 功能测试取决于工具 而工具又取决于工具核心 根pom