iohao / ioGame

无锁异步化、事件驱动架构设计的 java netty 网络编程框架; 轻量级,无需依赖任何第三方中间件或数据库就能支持集群、分布式; 适用于网络游戏服务器、物联网、内部系统及各种需要长连接的场景; 通过 ioGame 你可以很容易的搭建出一个集群无中心节点、集群自动化、分布式的网络服务器;FXGL、Unity、UE、Cocos Creator、Godot、Netty、Protobuf、webSocket、tcp、socket;java Netty 游戏服务器框架;

Home Page:http://game.iohao.com

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

gradle 生成文档无法生成子路由问题

mokself opened this issue · comments

你的问题

由于IoGame21版本的文档生成变化,我生成的文档只能生成出subCmd=0的路由文档,于是我查阅了源码发现了问题

文档生成的核心代码就是构建ActionDoc类,调用这个类中的addActionCommandDoc方法可以添加子路由

public class ActionDoc {
    public ActionDoc(int cmd, Class<?> controllerClazz) {
        this.cmd = cmd;
        this.controllerClazz = controllerClazz;
    }

    public void addActionCommandDoc(ActionCommandDoc actionCommandDoc) {
        int subCmd = actionCommandDoc.getSubCmd();
        this.actionCommandDocMap.put(subCmd, actionCommandDoc);
    }
}

而这个ActionCommandDoc参数是通过查找action类的源代码中的各种信息得到的(具体代码在ActionCommandDocParser#buildSourceDoc中)
code2png

其中有处关键代码如下
code1

通过图上这种反思找到源代码,结果可能不太理想,因为我使用的gradle编译路径build/classes下,所以找不到源代码。从而无法获取subCmd信息

但是即使无法获取源代码中的一些信息,这个subCmd是可以获取到的,并且已经在代码中获取到了,希望作者大大处理下

版本

  • ioGame version: 21.4

好的