spring-boot-maven-plugin 打破了同级模块依赖

2023-11-29

我有一个多模块 Maven 设置。一个父模块,加上两个子模块(子模块)A 和 B。模块 B 依赖于 A。但是,如果我在模块 A 中使用 spring-boot-maven-plugin,则编译依赖关系不会得到解决,模块 B 的编译目标将抛出“找不到符号”和“包不存在”错误。如果我不使用该插件,一切都会正常,但是我将无法在该项目中删除它。

这是重现该问题的方法:

父pom.xml

<modelVersion>4.0.0</modelVersion>
<groupId>com.whatever</groupId>
<artifactId>theparent</artifactId>
<version>2.7.0-SNAPSHOT</version>
<packaging>pom</packaging>
<modules>
    <module>service</module>
    <module>serviceClient</module>
</modules>
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>1.5.2.RELEASE</version>
</parent>

Module A

<modelVersion>4.0.0</modelVersion>
<artifactId>service</artifactId>
<packaging>jar</packaging>
<parent>
    <groupId>com.whatever</groupId>
    <artifactId>theparent</artifactId>
    <version>2.7.0-SNAPSHOT</version>
    <relativePath>../</relativePath>
</parent>

Module B

<modelVersion>4.0.0</modelVersion>
<artifactId>serviceClient</artifactId>
<parent>
    <groupId>com.whatever</groupId>
    <artifactId>theparent</artifactId>
    <version>2.7.0-SNAPSHOT</version>
    <relativePath>../</relativePath>
</parent>
<dependencies>
    <dependency>
        <groupId>com.whatever</groupId>
        <artifactId>service</artifactId>
        <version>2.7.0-SNAPSHOT</version>
    </dependency>
</dependencies>

现在,您所要做的就是在模块 A 中有一个类,在模块 B 中有另一个类,该类导入并使用第一个类。通过在父模块级别运行“mvn clean install”完成此操作后,它应该可以正常编译。但是,一旦将此插件添加到模块 A 中:

<build>
    <plugins>
        <plugin>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-maven-plugin</artifactId>
            <configuration>
                <mainClass>com.whatever.Application</mainClass>
            </configuration>
        </plugin>
    </plugins>
</build>

,模块 B 无法再解析来自模块 A 的依赖关系,并且您将看到“包不存在”、“找不到符号”等消息,表明它无法看到来自模块 A 的类。

这是一个错误吗?谁能帮我解决这个问题?


希望这个post可能对你有帮助。

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

spring-boot-maven-plugin 打破了同级模块依赖 的相关文章

随机推荐

  • 资源图片的绝对UriSource

    我有一个 WPF 项目 如果我将图像存储在 ProjectRoot Images image png 中 并将其编译为资源 那么我可以通过 xaml 此 xaml 位于根目录 将其作为 BitmapImage 访问BitmapImage U
  • django 导入错误 - 没有名为 core.management 的模块

    好吧 我看到很多这样的错误 我已经尝试了我所知道的一切 但尚未弄清楚这一点 我正在开发一个运行 python 2 5 和 Django 1 3 的开发服务器 解压 tar gz 下载后 使用 python setup py install
  • 更快的 JsonCpp 替代方案允许 Json 对象的复制/可变性?

    JsonCpp 很慢 而且代码相当混乱 有没有更快 更干净并且支持以下内容的替代方案 Json Value val copy val newMember 100 val newMember2 hello copy val val newMe
  • 将 COM 事件公开给 VBScript (ATL)

    我通过使用 ATL 简单对象 向导 用 C 和 ATL 构建了一个 COM 服务器 DLL 我关注的是微软的ATLDLLCOM服务器例子 除了一件事之外 一切都运行良好 我在 VBScript 中没有收到 COM 事件 我确实收到了 C 中
  • 单击时更改表格行的颜色

    我创建了一个表格 其中的行具有交替的颜色 例如黄色和红色 现在 我想将单击的行的颜色更改为一种常见颜色 例如蓝色 再次单击时恢复为原始颜色 我可以使用此代码更改颜色 mainTable find IDClicked css backgrou
  • C++如何包含(循环依赖)?

    我有Environment h 文件 include
  • 我的脚本无法在 IE(甚至 9)中运行?简单的 javascript 修改复制文本

    所以有一天我在浏览互联网时 复制了一段文字 我很酷的文字 并粘贴到Facebook上 却发现它变成了 我很酷的文字 阅读更多内容URL 我惊叹不已 太棒了 所以我深入研究并找到了一些教程等 我自己将其转换为具有数十个选项的可自定义插件 并输
  • ASP.net 在按下按钮时动态添加控件。回发问题

    我有一个包含多个按钮的用户控件 根据按下的按钮 不同的控件会添加到页面中 假设按钮 1 添加一个文本框 按钮 2 添加一个标签 我的代码大致如下 protected void but1 click object sender EventAr
  • 如果表包含大量未使用/未选择的列,是否会影响性能?

    背景 我有一个名为 cars 的表 其中包含大量二手车 大约 100 万行 该表有 170 多列 该表仅在各个列上建立索引 大多数列是布尔值 例如 has automatic gearbox 等 其余是字符串和数字 例如颜色和价格 这些汽车
  • vs 代码显示双重建议

    Sample 1 Sample 2 每当我编写时 VS Code 智能感知都会在 python 中显示双重建议 VS Code 中是否有设置 以便我可以将它们更改为正常状态 Press Ctrl Shift X查看是否安装了其他提示扩展并同
  • 如何更改字符串数组中的单个字符?

    有这个 include
  • 在 T-SQL 中替换没有游标的字符串中出现的字符串列表

    孩子 这真是一口 我想从字符串中解析标记 标记可以是单词或短语 我想要的是将任何标记的每次出现替换为字符串 我想在不使用光标的情况下执行此操作 Ex declare str varchar 256 I want this type to b
  • 从 Visual Studio 2017 使用 OData 服务

    我在使用 Dynamics Nav OData 时遇到问题 我正在使用 Visual Studio Community 2017 版本 15 9 0 并且我已经安装了扩展 OData Connected Service 官方 Microso
  • 可以对引用和非引用进行泛型吗?

    我正在尝试编写使引用成为非引用的代码Copy根据需要键入 同时直接使用该值 如果是 Copy 因为它是一个参考 考虑以下示例 struct Wrapper
  • 在 Python 3.6.2 上写入文件然后读取它

    target open test txt w target write ffff print target read 运行以下 python 脚本时 test txt 是一个空文件 它会打印一个空字符串 但是 当重新打开文件时 它可以很好地
  • 有什么方法可以知道数组列表是否包含一段文本?

    我有一个包含多个项目的数组列表 假设它们是 深棕色 蓝色 绿色 有什么方法可以查找我的某些商品中是否有字符串 DARK 我知道 contains 可以做到这一点 但只有当字符串完全正确时它才会这样做 我的想法是寻找以我的项目之一开头但没有所
  • 参考qt快速控制选项卡视图中的错误

    我用TabView编写了一个QT Quick程序 当我单击 Tabview 中的按钮 b1 时 程序应该调用 show text 并打印 b1 的文本 但它打印 ReferenceError b1 未定义 任何建议将不胜感激 谢谢 impo
  • 将 glut 链接到 Qt

    我想将 OpenGL 与 glut 结合到 Qt 中 我正在使用 Windows 我的 Qt 版本是 4 7 4 32 位 我按照教程进行操作 http www youtube com watch v 1nzHSkY4K18 我还查了一些人
  • SQL 年度总和报告,寻找优雅的解决方案

    我有一个包含 3 列的表 ItemCode Quantity 和 DocDate 我想以更 优雅 的方式创建以下报告 SELECT T0 ItemCode SELECT SUM QUANTITY FROM MyTable T1 WHERE
  • spring-boot-maven-plugin 打破了同级模块依赖

    我有一个多模块 Maven 设置 一个父模块 加上两个子模块 子模块 A 和 B 模块 B 依赖于 A 但是 如果我在模块 A 中使用 spring boot maven plugin 则编译依赖关系不会得到解决 模块 B 的编译目标将抛出