JDoc,即将抛弃它之前的最后次分享

背景

    之前分享过一次JFinal整合JDoc1.1, 整合后一直在忙于开发,没去系统的整理文档,只是陆陆续续的关注着JDoc的群,看看其他小伙伴遇到的问题跟反馈。 

    http://www.jfinal.com/share/262

    昨天有空了,又掏出JDoc写了一波文档,发现了很多BUG,加上今天看到一篇集成Swagger的文章,打算抛弃JDoc了。

    http://www.jfinal.com/share/347

分享

     1.潜水观察,大伙遇到的最多问题就是tools,各种配置系统环境,各种折腾。

     blob.png

     blob.png

直接从本地引入,是最方便快捷的了,传到git上,小伙伴们把工程下载下来,也不用在去折腾环境配置,直接用!特别是env这个环境变量,配置起来要命!

2.文档生成时,各种红字报错

    很多人都把JDoc的自动测试给配置上了,这会引发很多潜在BUG,比如不管你的JFinal路由是怎么配置的(“/AaaBbb”,AaaBbbController.class).目前JDoc都处理成/aaabbb,导致测试接口不通过,因而文档无法生成。

#use.analysis=true
#analysis.prefix.url=

以上这2个地方注意下,基本上我周围的小伙伴就没遇到其他问题了


BUG

    除开JDoc生成文档时,api路径全是小写外,还发现了一些BUG

    1.测试功能,参数带空格,idea格式化后内容对齐,此功能就用不了了

    W%}{PA}4`IL%2])Y(6JNVH9.png    9$[1@P9HN4Y(S3U4`TSG8@L.png    

    2.接上图,idea下@param注释找不到action中队友的参数,idea报错提示,虽然不影响,但是轻微处女座患者看着别扭。 据说JFinal3.2-JDK1.8版本可以参数注入了,但是运维小伙伴就是不升级服务器到1.8 我也是很无奈啊。

    3.不同环境下,api访问路径,一般来说既然提供了接口测试功能,那么就需要对开发环境/测试环境/正式环境的接口进行调用测试。 目前JDoc未提供此功能,跟作者沟通后的解决方案,是修改配置文件,分别生成开发环境.html、测试环境html、正式环境html3份文档。

    那么开工,在生成文档的过程中,发现同一个main方法执行中,只会生成出第一个启动的JFinalApiDocConfig,后面的JFinalApiDocConfig被忽略。

`@D03PZ~~``NFX6UQ%TN1AB.png

    虽然这个问题写3个Main方法,分别执行也能解决。


最后

    附上我的JDoc配置,其实就是官方的配置,去掉了自动测试

#指定java文件路径
java.source=src/main/java
#指定需要生成文档的包路径
package.name=com.longxing.admin
#指定采用的框架类型,目前支持jfinal,springmvc两种框架
parser.name=jfinal
#指定文档输出路径
out.path=src/main/webapp/api-cms.html
#指定模版生成器,目前仅支持html
parser.formater=html
#use.analysis=true
#analysis.prefix.url=http://localhost:9080/
#接口前缀
api.prefix=http://localhost:9080/admin/api/v1

    

    还有我昨天花了半小时写好的文档。

blob.png

blob.pngblob.png

准备抛弃JDoc的主要原因

    原先用JDoc本意就是想找Swagger的替代品,现在能用上Swagger了,就换了。相比之下Swagger更加成熟点。


评论区

jiren

2017-07-27 19:53

可以!有更好的 及时更新

书语2012

2018-01-11 10:57

吐嘈的对,接受批评,因为今年实在没空去维护这个工程,你说到的tools.jar的问题已经决定替换,实现一套自己解析的方案,不依赖于tools.jar里的javadoc

热门分享

扫码入社