Java 如何基于yml文件生成resttemplate?

Java 如何基于yml文件生成resttemplate?,java,spring,gradle,swagger,openapi,Java,Spring,Gradle,Swagger,Openapi,我使用openapi生成器gradle插件。这是我的身材。格雷德尔: buildscript { repositories { mavenLocal() jcenter { url "http://nexus.ca.sbrf.ru:8081/nexus/content/repositories/jcenter" } maven { url "ht

我使用openapi生成器gradle插件。这是我的身材。格雷德尔:

buildscript {
    repositories {
        mavenLocal()

        jcenter {
            url "http://nexus.ca.sbrf.ru:8081/nexus/content/repositories/jcenter"
        }
        maven {
            url "http://nexus.ca.sbrf.ru:8081/nexus/content/repositories/central"
        }
        maven { url 'http://nexus.ca.sbrf.ru:8081/nexus/content/repositories/Atlassian_proxy' }
        maven { url 'http://nexus.ca.sbrf.ru:8081/nexus/content/groups/public' }

        dependencies {
            classpath 'org.openapitools:openapi-generator-gradle-plugin:4.3.0'
            classpath "org.springframework.boot:spring-boot-gradle-plugin:2.2.1.RELEASE"
            classpath "io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE"
        }
    }
}


apply plugin: 'java'
apply plugin: 'org.openapi.generator'
apply plugin: "maven-publish"
apply plugin: "io.spring.dependency-management"
apply plugin: "org.springframework.boot"

dependencies {
    compile 'org.springframework:spring-context:5.3.0'
    compile 'org.springframework:spring-web:4.1.6.RELEASE'
    compile 'javax.servlet:javax.servlet-api:4.0.1'
    compile 'org.openapitools:jackson-databind-nullable:0.2.1'
    compile 'io.swagger:swagger-core:1.5.21'
    compile 'javax.annotation:javax.annotation-api:1.3.1'
}

openApiGenerate {
    generatorName = "spring"
    library = "resttemplate"
    inputSpec = "$rootDir/openapi-contracts/src/main/resources/openapi/api.yml".toString()
    outputDir = "$project.buildDir/generated/openapi"
    apiPackage = "ru.openapi.api.v1"
    modelPackage = "ru.openapi.model.v1"
    enablePostProcessFile = true
    configOptions = [
            dateLibrary         : "java8",
            useBeanValidation   : "true",
            enableBuilderSupport: "true",
            interfaceOnly       : "true",
            delegatePattern     : "true"
    ]
}

sourceSets {
    main {
        java {
            srcDirs "build/generated/openapi/src/main/java"
        }
    }
}
正在生成服务器代码,一切正常,但我希望为其生成resttemplate

为此,我已表示:

library = "resttemplate"
我得到这个错误:

未知库:resttemplate 可用图书馆: 弹簧靴 春季mvc 春云


我如何解决这个问题?

不知道如何使用gradle解决,但在maven中,它将是这样的:

      <plugin>
            <groupId>org.openapitools</groupId>
            <artifactId>openapi-generator-maven-plugin</artifactId>
            <version>${openapi.plugin.version}</version>
            <executions>
                <execution>
                    <id>${your-id}</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>generate</goal>
                    </goals>
                    <configuration>
                        <skipIfSpecIsUnchanged>true</skipIfSpecIsUnchanged>
                        <inputSpec>${project.basedir}/swagger.json</inputSpec>
                        <generatorName>java</generatorName>
                        <library>resttemplate</library>
                        <apiPackage>your.package</apiPackage>
                        <modelPackage>your.package</modelPackage>
                        <generateApis>true</generateApis>
                        <generateApiDocumentation>false</generateApiDocumentation>
                        <generateApiTests>false</generateApiTests>
                        <generateModels>true</generateModels>
                        <generateModelDocumentation>false</generateModelDocumentation>
                        <generateModelTests>false</generateModelTests>
                        <generateSupportingFiles>true</generateSupportingFiles>
                        <configOptions>
                            <sourceFolder>src/main/java</sourceFolder>
                            <java8>true</java8>
                            <dateLibrary>java8</dateLibrary>
                            <useTags>true</useTags>
                            <interfaceOnly>false</interfaceOnly>
                        </configOptions>
                    </configuration>
                </execution>
            </executions>
        </plugin>

org.openapitools
openapi生成器maven插件
${openapi.plugin.version}
${您的id}
生成源
生成
真的
${project.basedir}/swagger.json
JAVA
resttemplate
你的包裹
你的包裹
真的
假的
假的
真的
假的
假的
真的
src/main/java
真的
爪哇8
真的
假的
希望我能帮助你。
可能问题在于resttemplate在spring web dependency中不确定如何使用gradle,但在maven中,它将是这样的:

      <plugin>
            <groupId>org.openapitools</groupId>
            <artifactId>openapi-generator-maven-plugin</artifactId>
            <version>${openapi.plugin.version}</version>
            <executions>
                <execution>
                    <id>${your-id}</id>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>generate</goal>
                    </goals>
                    <configuration>
                        <skipIfSpecIsUnchanged>true</skipIfSpecIsUnchanged>
                        <inputSpec>${project.basedir}/swagger.json</inputSpec>
                        <generatorName>java</generatorName>
                        <library>resttemplate</library>
                        <apiPackage>your.package</apiPackage>
                        <modelPackage>your.package</modelPackage>
                        <generateApis>true</generateApis>
                        <generateApiDocumentation>false</generateApiDocumentation>
                        <generateApiTests>false</generateApiTests>
                        <generateModels>true</generateModels>
                        <generateModelDocumentation>false</generateModelDocumentation>
                        <generateModelTests>false</generateModelTests>
                        <generateSupportingFiles>true</generateSupportingFiles>
                        <configOptions>
                            <sourceFolder>src/main/java</sourceFolder>
                            <java8>true</java8>
                            <dateLibrary>java8</dateLibrary>
                            <useTags>true</useTags>
                            <interfaceOnly>false</interfaceOnly>
                        </configOptions>
                    </configuration>
                </execution>
            </executions>
        </plugin>

org.openapitools
openapi生成器maven插件
${openapi.plugin.version}
${您的id}
生成源
生成
真的
${project.basedir}/swagger.json
JAVA
resttemplate
你的包裹
你的包裹
真的
假的
假的
真的
假的
假的
真的
src/main/java
真的
爪哇8
真的
假的
希望我能帮助你。 可能问题在于resttemplate在SpringWeb依赖项中