zoukankan      html  css  js  c++  java
  • spring boot2.0+swagger自动生成PDF和HTML格式的API文档

    1、添加maven依赖

    <dependency>
     
    <groupId>io.springfox</groupId>
     
    <artifactId>springfox-swagger2</artifactId>
     
    <version>2.8.0</version>
    <exclusions>
      <exclusion>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-models</artifactId>
      </exclusion>
      <exclusion>
        <groupId>io.swagger</groupId>
        <artifactId>swagger-core</artifactId>
      </exclusion>
    </exclusions>
    </dependency>
     
    <dependency>
     
    <groupId>io.springfox</groupId>
     
    <artifactId>springfox-swagger-ui</artifactId>
     
    <version>2.8.0</version>
     
    </dependency>
     
    <!-- ********************* swagger导出PDF/HTML所需依赖 START ********************************* -->
     
    <dependency>
     
    <groupId>io.github.swagger2markup</groupId>
     
    <artifactId>swagger2markup</artifactId>
     
    <version>1.3.3</version>
     
    </dependency>

    2、添加生成ASCIIDOC所需要maven插件:

    <!--此插件生成ASCIIDOC-->
     
    <plugin>
     
    <groupId>io.github.swagger2markup</groupId>
     
    <artifactId>swagger2markup-maven-plugin</artifactId>
     
    <version>1.2.0</version>
     
    <configuration>
     
    <!--此处端口一定要是当前项目启动所用的端口-->
     
    <swaggerInput>http://localhost:[port]/[context-path]/v2/api-docs</swaggerInput>
    <!--
    <outputFile/>  生成单个文件
    <outputDir/>    生成多个文件
    -->
    <!--  <outputDir>./docs/asciidoc/generated</outputDir>-->
     <outputFile>./docs/asciidoc/generated/${project.build.finalName}-API</outputFile>
    <config> 
    <!-- 除了ASCIIDOC之外,还有MARKDOWN和CONFLUENCE_MARKUP可选 --> 
    
    <swagger2markup.markupLanguage>ASCIIDOC</swagger2markup.markupLanguage> 
    
    </config> 
    
    </configuration>
    
    </plugin>

    3、添加输出PDF和HTML的maven插件:

    <!--此插件生成HTML和PDF-->
     
    <plugin>
     
    <groupId>org.asciidoctor</groupId>
     
    <artifactId>asciidoctor-maven-plugin</artifactId>
     
    <version>1.5.3</version>
     
    <!-- Include Asciidoctor PDF for pdf generation -->
     
    <dependencies>
     
    <dependency>
     
    <groupId>org.asciidoctor</groupId>
     
    <artifactId>asciidoctorj-pdf</artifactId>
     
    <version>1.5.0-alpha.10.1</version>
     
    </dependency>
     
    <dependency>
     
    <groupId>org.jruby</groupId>
     
    <artifactId>jruby-complete</artifactId>
     
    <version>1.7.24</version>
     
    </dependency>
     
    </dependencies>
     
    <!-- Configure generic document generation settings -->
     
    <configuration>
     
    <sourceDirectory>src/docs/asciidoc/generated</sourceDirectory>
     
    <sourceHighlighter>coderay</sourceHighlighter>
     
    <attributes>
     
    <toc>left</toc>
     
    </attributes>
     
    </configuration>
     
    <!-- Since each execution can only handle one backend, run
     
    separate executions for each desired output type -->
     
    <executions>
     
    <execution>
     
    <id>output-html</id>
     
    <phase>generate-resources</phase>
     
    <goals>
     
    <goal>process-asciidoc</goal>
     
    </goals>
     
    <configuration>
     
    <backend>html5</backend>
     
    <outputDirectory>src/docs/asciidoc/html</outputDirectory>
     
    </configuration>
     
    </execution>
     
     
     
    <execution>
     
    <id>output-pdf</id>
     
    <phase>generate-resources</phase>
     
    <goals>
     
    <goal>process-asciidoc</goal>
     
    </goals>
     
    <configuration>
     
    <backend>pdf</backend>
     
    <outputDirectory>src/docs/asciidoc/pdf</outputDirectory>
     
    </configuration>
     
    </execution>
     
    </executions>
     
    </plugin>

    4、按照上面插件里配置的路经在对应目录手动创建对应名字的空文件夹

      》使用maven compiler 编译项目,启动项目

      》运行maven plugins 中的swagger2markup 生成 文档目录

    5、依次运行指令

    mvn generate-resources
  • 相关阅读:
    Design Patterns
    Interview
    ListView Optimization
    android onclick onLongClick ontouch dispatchTouchEvent onInterceptTouchEvent
    java hashcode equals
    Android res/raw vs assets
    HttpClient -- 血的教训
    How Android Draws Views
    元数据 metadata
    Git-2
  • 原文地址:https://www.cnblogs.com/weixupeng/p/13495802.html
Copyright © 2011-2022 走看看