我有以下代碼:
import org.openapitools.generator.gradle.plugin.tasks.GenerateTask
plugins {
id 'org.openapi.generator' version '5.3.1'
}
apply plugin: 'java'
sourceSets {
main {
java.srcDirs = "${buildDir}/api/src/main/java/"
}
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'javax.validation:validation-api'
implementation 'com.fasterxml.jackson.core:jackson-annotations'
implementation "io.swagger:swagger-annotations"
}
task generateJavaApi(type: GenerateTask) {
generatorName = "spring"
inputSpec = "$buildDir/resources/main/static/api.yaml"
outputDir = "$buildDir/api"
apiPackage = "org.myApi.api"
modelPackage = "org.myApi.model"
configOptions = [
interfaceOnly : "true",
openApiNullable: "false"
]
}
configure(generateJavaApi) {
group = 'openapi tools'
description = 'Generate Java API'
}
generateJavaApi.dependsOn(build)
如果我寫build.doLast(generateJavaApi),IntelliJ 會告訴我以下資訊:沒有找到方法呼叫 build.dolast 的候選者。
為什么會這樣?構建后如何觸發 generateJavaApi?
(這樣運行gradle build也會自動觸發java api的生成)
uj5u.com熱心網友回復:
你想要的是這樣的:
build.configure { finalizedBy generateJavaApi }
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/438989.html
