不会生成swagger Maven插件文档 [英] swagger maven plugin documentation is not generated

查看:212
本文介绍了不会生成swagger Maven插件文档的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在尝试使用但是没有创建任何东西,这是我输入的详细信息中的插件:

But nothing is created, this is plugin in details I entered:

<plugin>
    <groupId>io.swagger</groupId>
    <artifactId>swagger-codegen-maven-plugin</artifactId>
    <version>2.2.2-SNAPSHOT</version>
    <executions>
        <execution>
            <goals>
                <goal>generate</goal>
            </goals>
            <configuration>
                <inputSpec>/data/AMEE/ame/api.yaml</inputSpec>
                <language>java</language>
                <configOptions>
                   <sourceFolder>/data/AMEE/ame/gen</sourceFolder>
                </configOptions>
            </configuration>
        </execution>
    </executions>
</plugin>

它没有创建任何文档.然后,我尝试了 kongchen swagger maven插件

It didn't create any documentation. Then I tried kongchen swagger maven plugin

插件:

<plugin>
    <groupId>com.github.kongchen</groupId>
    <artifactId>swagger-maven-plugin</artifactId>
    <version>3.0.0</version>
    <configuration>

        <skipSwaggerGeneration>false</skipSwaggerGeneration>
        <apiSources>
            <apiSource>
                <springmvc>false</springmvc>
                <locations>
                    <location>com.aepona.monatization.api.rest</location>
                    <location>com.aepona.monatization.inputprocessing.api.rest</location>
                    <location>com.aepona.monatization.reporting.api.rest</location>
                </locations>
                <schemes>
                    <scheme>http</scheme>
                    <scheme>https</scheme>
                </schemes>
                <host>localhost:8080</host>
                <basePath>/api</basePath>
                <descriptionFile>/data/zzzz/descriptionFile</descriptionFile>
                <info>
                    <title>Acccelerite Monatization Engine</title>
                    <version>1.0.0</version>
                    <description>DESCRIPTION</description>
                    <termsOfService>http://terms-of-services.url</termsOfService>
                    <license>
                        <url>http://url-to-license.com</url>
                        <name>LICENSE</name>
                    </license>
                </info>
                <outputPath>/data/zzzz/static</outputPath>
                <swaggerDirectory>/data/zzzz/swaggerFile</swaggerDirectory>
                <attachSwaggerArtifact>true</attachSwaggerArtifact>
            </apiSource>
        </apiSources>
    </configuration>
    <executions>
        <execution>
            <phase>compile</phase>
            <goals>
                <goal>generate</goal>
            </goals>
        </execution>
    </executions>
</plugin>

依赖性:

<dependency>
    <groupId>com.github.kongchen</groupId>
    <artifactId>swagger-maven-plugin</artifactId>
    <version>3.0.0</version>
</dependency>

仍未生成任何文档.我在哪里做错了?请帮我.谢谢.

Still no documentation is generated. Where did I do wrong? Please help me. Thanks.

推荐答案

Maven依赖项::

Maven Dependency::

<dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger2</artifactId>
            <version>2.4.0</version>
        </dependency>
        <dependency>
            <groupId>io.springfox</groupId>
            <artifactId>springfox-swagger-ui</artifactId>
            <version>2.4.0</version>
        </dependency>

使用注释配置类,并在conf类中添加以下代码.

Annotate configuration class with and add below code in conf class.

@Configuration
@EnableWebMvc
@EnableSwagger2


 @Bean
    public Docket api() { 
        return new Docket(DocumentationType.SWAGGER_2)  .apiInfo(apiInfo()).directModelSubstitute(LocalDate.class, String.class).genericModelSubstitutes(ResponseEntity.class)
                .useDefaultResponseMessages(false)
          .select()           
          .apis(RequestHandlerSelectors.any())              
          .paths(PathSelectors.any())                        
          .build();      

    }
    @Override
    public void addResourceHandlers(ResourceHandlerRegistry registry) {
        registry.addResourceHandler("swagger-ui.html")
          .addResourceLocations("classpath:/META-INF/resources/");
        registry.addResourceHandler("/webjars/**")
          .addResourceLocations("classpath:/META-INF/resources/webjars/");
    }
    @SuppressWarnings("deprecation")
    private ApiInfo apiInfo() {
        ApiInfo apiInfo = new ApiInfo(
          " REST API",
          "XXX Rest API for XXX authentication and Loan creation.",
          "Mer V1.1",
          "Terms of service",
          "ER",
          "License of API",
          "");
        return apiInfo;
    }

控制器::

@RestController
@Api("/resource")
public class Controller {
}

在浏览器中的网址下方点击以下内容: http://localhost:ip/ApplicationName/swagger-ui.html

After that hit below url in browser: http://localhost:ip/ApplicationName/swagger-ui.html

这篇关于不会生成swagger Maven插件文档的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆