- 按照文档安装服务torna,gitee地址:
https://gitee.com/durcframework/torna?_from=gitee_search
- 安装之后,登录地址:
http://ip:7700/#/project/doc/m32QA20r
用户密码:admin/123456
-
创建一个空间,这里我使用了默认的空间研发中心。
-
创建一个项目,这里需要创建一个自己的项目。
-
再创建一个模块
-
记下来模块的token和url
-
应用项目中pom添加依赖:
<dependency>
<groupId>cn.torna</groupId>
<artifactId>swagger-plugin</artifactId>
<version>1.2.12</version>
<scope>test</scope>
</dependency>
- src/main/resources下添加一个torna.json文件,内容如下:
{
// 开启推送
"enable": true,
// 扫描package,多个用;隔开,如果这个不对,会导致报错:文档内容不能为空
"basePackage": "com.xxx.application.api",
// 推送URL,IP端口对应Torna服务器
"url": "http://ip:7700/api",
// 模块token
"token": "931167d9347e4aec9409f2b275437431",
// 调试环境,格式:环境名称,调试路径,多个用"|"隔开(这个是在torna界面debug接口时用的应用地址,可以先不管,后面在torna里面改)
"debugEnv": "test,http://127.0.0.1:9001",
// 推送人
"author": "xxx",
// 打开调试:true/false
"debug": true,
// 是否替换文档,true:替换,false:不替换(追加)。默认:true
"isReplace": true
}
- 增加测试类,并运行:
package com.xxx.test;
import cn.torna.swaggerplugin.SwaggerPlugin;
/**
* 推送swagger文档
*/
public class DocPushTest {
public static void main(String[] args) {
SwaggerPlugin.pushDoc();
}
}
- 点击导出按钮导出markdown文件:
- 下载安装软件:Writage,地址:
https://www.writage.com/
安装后,用word打开markdown文件,就自动以wrod格式展示了。在word中,另存为word格式的文件,就完全转换成word了。
更新:
最近一个项目的代码中用到swagger3,这个办法就不行了,torna暂时不支持swagger3的导入。于是换了yapi这个开源文档管理工具,可以导入swagger3的json文件,然后导出成html,再用writage转换为word。
但是以上两种方式,都有一点小问题,就是格式不能自定义,还要费大量时间去改格式。最新的办法是,用freemarker模板生成word文件,不需要什么接口管理平台,格式任意定义。
参考:
http://torna.cn/dev/swagger-plugin.html
https://blog.csdn.net/luxiangzhou/article/details/83616574
https://blog.csdn.net/weixin_45103378/article/details/118395284