You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Spring Boot多模块Gradle项目运行main方法子模块路径找不到问题

解决多模块Spring Boot项目运行main方法时Gradle找不到子模块的问题

针对你遇到的问题,这里有几个可行的排查和解决方向:

  • 先确保子模块已完成构建
    Gradle运行主模块的main任务时,不会自动触发依赖子模块的构建(测试任务通常会自动关联依赖构建)。手动执行./gradlew :libs:models:compileJava(或:libs:models:build)构建子模块后,再运行main任务试试。

  • 检查settings.gradle中的模块声明
    确认你的settings.gradle(或settings.gradle.kts)里已经正确包含了子模块,路径拼写完全一致:

    // settings.gradle示例
    include(":libs:models")
    // 如果模块的实际文件路径和声明的逻辑路径不一致,需要指定projectDir:
    // project(":libs:models").projectDir = file("./path/to/actual/models")
    
  • 配置bootRun任务依赖子模块构建
    在主模块的build.gradle里,给bootRun任务添加依赖,确保运行前先构建子模块:

    bootRun {
        dependsOn(":libs:models:compileJava")
    }
    

    这样每次执行bootRun时,Gradle都会先确保子模块的代码已编译完成。

  • 排查Testcontainers开发时配置的干扰
    如果你在配置Testcontainers开发时支持(比如用了developmentOnly或者相关插件),检查是否不小心修改了main源码集的依赖配置,比如是否把模块依赖误放到了仅测试生效的配置块里。确保implementation project(":libs:models")确实在主模块的dependencies根块下,而非testImplementation或其他仅测试的配置。

内容的提问来源于stack exchange,提问作者dardo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.11 03:34:53