Плагин предварительно скомпилированного скрипта Gradle: зависимость внешнего плагина Quarkus не найдена
Фон
В настоящее время я разрабатываю многопроект Gradle с несколькими микросервисами quarkus. Чтобы связать свои зависимости 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
а также
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 / основной / Котлин / quarkus-соглашенияs.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 / микросервис / 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
2 ответа
Плагин Gradle, скорее всего, не может найти зависимость Java:
// https://mvnrepository.com/artifact/io.quarkus/quarkus-universe-bom
implementation("io.quarkus:quarkus-universe-bom:2.2.3.Final")
Эта ошибка должна быть исправлена в выпуске Quarkus версии 2.4.CR1.
См. Проблемы с Github
https://github.com/quarkusio/quarkus/issues/20595https://github.com/quarkusio/quarkus/issues/20531