UMLGraph允许对UML类和序列图进行声明性说明和绘制。 该规范是在文本图中完成的,然后将其转换为适当的图形表示。
UMLGraph被实现为javadoc doclet(满足doclet API的程序,该程序指定了javadoc工具生成的输出的内容和格式)。 此外,UMLGraph的输出需要使用Graphviz点程序进行后处理。 因此,要使用UMLGraph类绘制类图,您将需要在计算机上安装javadoc和Graphviz。

Maven插件详细信息

UMLGraph可以轻松地与现有的基于Maven的应用程序集成。 以下是需要配置的Maven插件详细信息:

<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-javadoc-plugin</artifactId><configuration><doclet>org.umlgraph.doclet.UmlGraphDoc</doclet><docletArtifact><groupId>org.umlgraph</groupId><artifactId>doclet</artifactId><version>5.1</version></docletArtifact><additionalparam>-horizontal -attributes -enumconstants -enumerations -operations -types -visibility -inferrel -inferdep -hide java.* -inferrel -collpackages java.util.*</additionalparam><show>public</show></configuration>
</plugin>

UMLGraph取决于Graphviz ,它必须已经安装在计算机上。 同样在上述maven设置中,如果您配置了“ GRAPHVIZ_HOME”环境变量,则无需在插件详细信息中指定docletpath。

配置UMLGraph的步骤

  1. 下载并安装Graphviz
  2. 设置GRAPHVIZ_HOME环境变量。
  3. 在您的POM.xml中添加以上插件详细信息,根据需要配置其他参数 。
  4. 执行'mvn javadoc:javadoc'。

样品

以下是在我们的Pizza实体pizza_class_diagram.png中使用上述配置生成的示例

更多配置

您可以根据需要配置此图。 请参考UMLGraph类图选项以进行更多配置。

参考: 来自 NS.Infra博客的JCG合作伙伴 Abhishek Jain 从Java源代码生成类图 。

翻译自: https://www.javacodegeeks.com/2012/06/class-diagram-generation-from-java.html

从Java源代码生成类图相关推荐

  1. 使用Eclipse UML 插件 Papyrus由Java代码反向生成类图

    使用Eclipse UML 插件 Papyrus由Java代码反向生成类图 为了补充上一篇博文(Java基础(复习三) -- 类图例子)类图的例子寻找一个可以生成类图的工具,搜索了若干文章后决定使用P ...

  2. Java画UML类图

    1.在Eclipse中安装插件. 1.1 安装和使用AmaterasUML 安装AmaterasUML前,需要先安装GEF 第一种:采用eclipse在线安装方式安装就好. eclipse在线安装GE ...

  3. IDEA中自动生成类图方法

    1.打开设置 File-> Setting或windows下按Ctrl+Alt+S 2.找到 Tools -> Diagrams ,如下图 3.在Java Class Diagrams 中 ...

  4. Eclipse中使用ModelGoon插件生成类图及顺序图

    前言 ​ 在做课设时,发现了几个比较强大的功能,如可以使用EA或Rose通过已有的类图生成对应的代码,但是通过测试发现,其生成的代码是简单的代码框架.但是如果已有项目代码,然后逆向生成类图呢?发现在E ...

  5. eclipse中green UML 自动生成类图

    2019独角兽企业重金招聘Python工程师标准>>> eclipse中.green UML 自动生成类图 Green UML和AmaterasUML 两种 一.安装方法: 1.都是 ...

  6. Java程序设计——UML类图

    目录(仅供参考) 一.定义 二.类图示例 三.类之间的关系 类与类一共有如下几种关系:泛化(Generalization).实现(Realization).依赖(Dependence).关联(Asso ...

  7. 用Enterprise Architect从源码自动生成类图

    参考:http://blog.csdn.net/zhouyong0/article/details/8281192/ /* references:感谢资源分享者. info:简单记录如何通过工具从源码 ...

  8. Java动态生成类以及动态添加属性 本篇文章来源于 Linux公社网站(www.linuxidc.c

    2019独角兽企业重金招聘Python工程师标准>>> 有个技术实现需求:动态生成类,其中类中的属性来自参数对象中的全部属性以及来自参数对象propertities文件. 那么技术实 ...

  9. java自动生成类_自动生成优化的Java类专业知识

    java自动生成类 如果您今年访问过JavaOne,您可能已经参加了我的演讲"如何从数据库生成定制的Java 8代码". 在那次演讲中,我展示了如何使用Speedment Open ...

  10. IEDA一键生成类图和时序图

    在软件开发的时候,一般正常的开发流程是先写文档,在根据文档来进行开发,但是大部分的公司都是先开发,然后在补文档.在写文档的时候,就需要画大量的类图和时序图.手动画图需要花费大量的时间.现在好多的Ide ...

最新文章

  1. 压缩机电流保护原因是什么?压缩机烧毁常见原因有哪些?
  2. Sql 最简单的Sqlserver连接
  3. [C++STL]常用查找算法
  4. Win10开机一直转圈圈怎么办?一直转圈进不去系统的解决方法
  5. Go语言的类型系统 - 翻译
  6. 树莓派入门教程 - 0 - 准备篇 - 0.1 第一次开机
  7. mysql主库从库在同一台服务器_通过两种方式增加从库——不停止mysql服务
  8. 特定时间循环增加一个时间段值
  9. Python学习 5day__基础知识
  10. waitpid最后以一个参数设为0_变频器用远传压力表控制恒压供水参数设置
  11. Win10 LTSB 2016 激活
  12. MongoDB Could not find host matching read preference { mode: “primary” } for set shard1
  13. HTTP 多处理模块(MPM)
  14. SLM2110 600V 2A 逆变电源专用芯片替代IR2110S 移动储能解决方案
  15. 李飞飞:如何教计算机理解图片
  16. 人类一败涂地做图教程_人类一败涂地自定义人物怎么制作 捏人实用技巧教学...
  17. Python爬虫日记2——使用requests
  18. 手游运营,怎么做一份数据日报?
  19. 迅雷文件创建失败无法下载
  20. 讲一个api网页全部保存到本地_WebRTC在网页端音视频通话的技术实践

热门文章

  1. 从各方面比较一下各类电脑玩手游吃鸡安卓模拟器
  2. mysql 数据联合查询语句_MySQL - 数据查询 - 联合查询
  3. windows做软件界面
  4. EasyUI框架04——treegrid
  5. Unity基础组件及介绍
  6. 2个网卡配置相同ip 华为交换机_华为交换机如何配置管理IP地址、如何修改管理IP地址...
  7. 【Scratch案例教学】scratch手把手教小朋友制作飞机大战、空中格斗、星际争霸等超酷游戏
  8. StringUtil工具类 之 字符串长度截取函数
  9. 解决Win11安装Keil芯片包失败/软件卡死/无法解压的问题
  10. 编程精华资源(ITeye优秀专栏)大汇总