如何从Java代码生成UML图(特别是序列图)?ObjectAid UML Explorer
如何从现有的Java代码生成UML图(特别是序列图)?
如何从现有的Java代码生成UML图(特别是序列图)?
是我用过的。它很容易从存储库安装:
Name: ObjectAid UML Explorer
Location: http://www.objectaid.com/update/current
并生成了非常漂亮的UML图:
ObjectAid UML Explorer 不同于其他 UML 工具。它使用UML表示法来显示现有代码的图形表示形式,该表示形式与文本编辑器一样准确和最新,同时非常易于使用。几个独特的功能使这成为可能:
- 您的源代码和库是显示的模型,它们不会反向工程成不同的格式。
- 如果您在Eclipse中更新代码,您的图表也会更新;无需对源代码进行反向工程。
- 重构会更新关系图以及源代码。重命名字段或移动类时,关系图只会反映更改,而不会不同步。
- Eclipse 工作区中的所有关系图都会根据需要使用重构更改进行更新。如有必要,它们将从版本控制系统中签出。
- 关系图已完全集成到 Eclipse IDE 中。您可以将 Java 类从任何其他视图拖到关系图上,并且与关系图相关的信息将显示在其他视图中(如果适用)。
编辑:如果你是一个设计师,那么Papyrus是你最好的选择,它非常先进,功能齐全,但如果你只是想勾勒出一些UML图和易于安装,那么ObjectAid非常酷,它不需要任何插件,我刚刚在Eclipse-Java EE上安装了它,并且工作得很好!
更新 2013年10月11日
我最初的帖子是在2012年6月,很多事情都发生了变化,许多工具已经发展壮大,而其他工具却没有。由于我将回去做一些建模,并且还得到了一些回复,我决定再次安装纸莎草纸,并将再次研究其他可能的UML建模解决方案。UML生成(具有同步功能)对软件设计人员来说非常重要,而不是对普通开发人员。
我希望纸莎草纸有直接的方法将类逆向工程到UML类图中,如果逆向工程具有同步功能,那将是非常酷的,但不幸的是,纸莎草纸项目充满了功能,我认为那里的开发人员已经有很多手头了,因为你在纸莎草纸上做的许多操作可能不会给你任何回应,只是什么都没有发生,但这无论如何都超出了这个问题的范围。
答案 (2013年10月11日)
工具
步骤
右键单击 MyProject_kdm.xmi -> 发现 -> 发现器 -> 再次从 KDM 代码中发现 UML 模型,您将获得一个属性对话框,将序列化道具设置为 TRUE 以生成名为 MyProject.uml 的文件
将生成的MyProject.uml移动到UML文件夹,Eclipse会询问您是否要替换它,请单击“是”。我们在这里所做的是,我们将一个空模型替换为一个生成的模型。
ALT+W -> 显示视图 ->纸莎草 -> 模型浏览器
在该视图中,您会发现您的课程如图所示
在视图中右键单击根模型 -> 新建关系图
然后开始从视图中抓取到关系图中的类
一些功能
要显示类元素(变量,函数等),右键单击任何类 ->过滤器 ->显示/隐藏内容 Voila !!
您可以从窗口 ->透视 ->纸莎草纸 ->类图中获得默认的友好颜色设置
一个非常重要的设置是“排列”,当您删除类时,他们会在类图上的任何空白处进行狭窄的右键单击,然后单击“全部排列”
模型资源管理器视图中的箭头可以抓取到图表上,以显示泛化,实现等
完成所有这些之后,您的设置将显示如下图表
据我所知,同步不可用,您需要手动导入任何新类。
仅此而已,除非你真的需要,否则不要购买商业产品,纸莎草纸实际上很棒,很复杂,而不是捐赠或其他东西。
免责声明:我与纸莎草人没有任何关系,事实上,起初我不喜欢纸莎草纸,直到我做了很多研究并耐心地体验了它。当我尝试其他免费工具时,将再次回到这篇文章。