gradle - Gradle 预编译脚本插件:未找到外部 Quarkus 插件依赖项
问题描述
背景
我目前正在开发一个带有多个 quarkus 微服务的 gradle 多项目。为了捆绑我的 quarkus 依赖项,我使用预编译脚本插件和kotlin-dsl
. 鉴于以下配置,执行quarkusBuild
工作正常。
问题
执行quarkusDev
微服务子项目的任务失败
Unable to find quarkus-gradle-plugin dependency in project ':microservice'
你知道为什么会这样吗?我已经为此投入了几个小时,但我仍然不明白它为什么会失败。https://github.com/quarkusio/quarkus/issues/12509似乎是相关的,但建议的解决方案对我不起作用。任何帮助是极大的赞赏!
编辑
gradle.plugin.io.quarkus:quarkus-gradle-plugin:2.2.3.Final
我意识到and之间可能存在差异io.quarkus:gradle-application-plugin:2.2.3.Final
,但是交换依赖项并没有多大帮助。
配置
这是我的项目的最小版本,它允许重现错误。
这个最小的例子也可以在这里查看:https ://github.com/lorenzjosten/gradle-plugin-quarkus
rootProject
- buildSrc
- src/main/kotlin
quarkus-conventions.gradle.kts
build.gradle.kts
settings.gradle.kts
gradle.properties
- microservice
- src/...
build.gradle.kts
build.gradle.kts
settings.gradle.kts
gradle.properties
rootProject/buildSrc/src/main/kotlin/quarkus-conventions.gradle.kts
plugins {
java
id("io.quarkus")
}
val quarkusUniverseBomVersion: String by project
dependencies {
implementation(enforcedPlatform("io.quarkus:quarkus-universe-bom:$quarkusUniverseBomVersion"))
implementation("io.quarkus:quarkus-kotlin")
implementation("io.quarkus:quarkus-resteasy-reactive")
implementation("io.quarkus:quarkus-resteasy-reactive-jackson")
implementation("io.quarkus:quarkus-hibernate-reactive-panache")
implementation("io.quarkus:quarkus-reactive-pg-client")
implementation("io.quarkus:quarkus-smallrye-reactive-messaging-amqp")
implementation("io.quarkus:quarkus-arc")
testImplementation("io.quarkus:quarkus-junit5")
}
rootProject/buildSrc/build.gradle.kts
val quarkusPluginVersion: String by project
plugins {
`kotlin-dsl`
}
repositories {
mavenCentral()
maven("https://plugins.gradle.org/m2/")
gradlePluginPortal()
}
dependencies {
implementation("io.quarkus:gradle-application-plugin:${quarkusPluginVersion}")
}
rootProject/buildSrc/gradle.properties
quarkusPluginVersion=2.3.0.Final
rootProject/microservice/build.gradle.kts
plugins {
id("quarkus-conventions")
}
rootProject/settings.gradle.kts
include("microservice")
rootProject/build.gradle.kts
plugins {
idea
}
repositories {
mavenCentral()
maven("https://plugins.gradle.org/m2/")
gradlePluginPortal()
}
allprojects {
apply(plugin = "idea")
idea {
module {
isDownloadSources = true
isDownloadJavadoc = true
}
}
}
rootProject/gradle.properties
quarkusUniverseBomVersion=2.2.3.Final
解决方案
这是一个应该使用 quarkus 发行版 2.4.CR1 修复的错误
查看 Github 问题
https://github.com/quarkusio/quarkus/issues/20595 https://github.com/quarkusio/quarkus/issues/20531
推荐阅读
- mongodb - MongoDB - 是否可以通过 _id 字段比较文档?
- css - 使用 @extend 时,Sass 将所有选择器应用于样式块
- angular - 如何从日期数组中禁用 Angular Material Datepicker 日期?
- ios - UITextView 不会更改 textColor 属性
- javascript - 拉刷新不更新列表
- c++ - 添加这些字符串有什么区别?
- java - 给定 xml 文件,如何在 Java webapp 中实现 SAML 协议
- javascript - 使用空手道脚本中的 ECDSA 算法调用 SHA256
- python - 如何将数据框中的两个字段转换为二维数组?
- ios - 推送视图控制器在 Swift 中不起作用