我正在用java语言编写一个程序,它将java源代码作为输入,输出是包含源代码类图的xmi文件。
我研究过 xmi 结构,但找不到足够的资源来解释标签的结构和顺序。
第一个问题是如何找出标签的顺序和每个标签的定义?例如,“isActive = false”等是什么意思?
其次,是否有任何关于库或 java 语言的建议可以帮助我完成这个项目?
我认为标签顺序在 XMI 中并不重要。一般来说,XMI 只是定义了如何将 MOF 映射到 XML。所以基本上你从Java构建M2模型(=UML),然后如果我理解正确的话,然后用XMI将它映射到XML(我认为双重间接是你找不到从UML映射到XMI的好资源的原因直接地)。
对于许多人来说,示例可能比各种 OMG 标准定义的转换规则链更易于访问。因此,我将在我最喜欢的 UML 工具中为我感兴趣的导出方面绘制一个最小的 UML 示例图,然后查看导出的 XMI。然后根据需要添加功能...
PS:您可能希望使用 Java 反射类(包 java.lang.reflect)而不是自己解析 Java 源代码来生成 XMI(如果您不需要保留方法参数名称)。