Quarkus+Gradle多项目:subProjectB引用subProjectA失败求助
Quarkus Gradle多项目依赖引用失败问题解决
问题分析
普通Gradle多项目中,通过根settings.gradle添加include 'subProjectA', 'subProjectB',并在subProjectB的build.gradle中配置implementation(project("\":subProjectA\""))可正常引用依赖,但相同配置在Quarkus+Gradle多项目中报错:
Build file '/Users/josuegialis/Desktop/MultiQuarkusGradleProject/subProjectB/build.gradle' line: 18
A problem occurred evaluating root project 'MultiQuarkusGradleProject'.Project with path ':subProjectB' could not be found in root project 'MultiQuarkusGradleProject'.
解决方案
1. 修正依赖引用的语法错误
你当前的依赖写法存在多余的转义引号,这会导致Gradle解析项目路径出错。将subProjectB的build.gradle中的依赖配置修改为:
implementation(project(":subProjectA"))
注意:project()方法的参数不需要额外转义引号,直接传入:subProjectA即可。
2. 确保Quarkus多项目的插件配置正确
Quarkus Gradle多项目需要注意插件的应用方式:
- 如果所有子项目都是Quarkus项目,可在根项目的
build.gradle中用subprojects块统一配置:
subprojects { apply plugin: 'io.quarkus' repositories { mavenCentral() } dependencies { implementation enforcedPlatform("io.quarkus:quarkus-bom:${quarkusVersion}") // 其他公共依赖按需添加 } }
- 若仅部分子项目为Quarkus项目,仅在对应子项目的
build.gradle中单独应用io.quarkus插件。
3. 验证项目同步与构建
修改配置后:
- 执行命令
./gradlew clean build重新构建项目 - 在IntelliJ中执行
File > Sync Project with Gradle Files同步配置
额外检查点
- 确认
settings.gradle中的include语句无拼写错误:
include 'subProjectA', 'subProjectB'
- 确保子项目的目录名称与
include中指定的名称完全一致(区分大小写)
内容的提问来源于stack exchange,提问作者Josue Gialis
相关产品推荐
相关产品推荐

