如何从Java代码生成UML图(特别是序列图)?
如何从现有Java代码生成UML图(特别是序列图)?您的代码库是什么?java还是C++?< /p> eUML2 for Java是为Java Developer设计的强大UML建模工具 在月食中。免费版可用于商业用途。信息技术 支持以下功能:如何从Java代码生成UML图(特别是序列图)?,java,uml,reverse-engineering,diagram,Java,Uml,Reverse Engineering,Diagram,如何从现有Java代码生成UML图(特别是序列图)?您的代码库是什么?java还是C++?< /p> eUML2 for Java是为Java Developer设计的强大UML建模工具 在月食中。免费版可用于商业用途。信息技术 支持以下功能: 简历和团队支持 设计用于具有多个可自定义模型视图的大型项目 太阳神顺应 实时代码/模型同步 UML2.1兼容并支持OMG XMI JDK 1.4和1.5支持 商业版提供: 高级逆向工程 强大的真实依赖性分析工具 umlprofile和MDD 数据库工
- 简历和团队支持
- 设计用于具有多个可自定义模型视图的大型项目
- 太阳神顺应
- 实时代码/模型同步
- UML2.1兼容并支持OMG XMI
- JDK 1.4和1.5支持
- 商业版提供:
- 高级逆向工程
- 强大的真实依赖性分析工具
- umlprofile和MDD
- 数据库工具
- 可自定义模板支持
到目前为止,我用于逆向工程的最佳工具是java->UML。它基于Eclipse(而不仅仅是一个插件),并且确实工作得很好。我建议一般使用,尽管几个月前我在我的web项目中确实遇到了一些问题。他们曾一度推出过免费版,但据推测该版本已不再推广 如果您真的喜欢源代码中的逆向工程序列图,我建议您 就Eclipse项目本身而言,该项目可能支持反向工程,尽管我从未见过它在实践中的使用
(模型发现)项目EclipseGMT项目在实现您的目标方面似乎更加清晰。这将是一个很好的起点。您还可以尝试一下netbeans UML建模器。我用它来生成我在eclipse项目中使用的Java代码。您甚至可以在netbeans中导入eclipse项目,并使eclipse设置与netbeans项目设置保持同步 我尝试了几个eclipse的UML建模工具,但并不满意。它们要么不稳定,要么复杂,要么丑陋不堪 怎么样?
这不是为了逆向工程!!!这是为了在编码之前进行工程设计。您可以使用EclipseUML for Eclipse3.5的30天评估版本: 这不是最新的3.6版本,但相当不错,不需要您购买它进行测试和反向工程 逆向工程: 实时flash演示: EclipseUML Omondo是世界上最好的Java工具。在这个实时java同步市场上,似乎只有eUML与之竞争,但eUML在代码中添加了模型标记,这真的非常糟糕,对我来说是绝对不行的。我发现插件非常易于使用,并且可以从源代码生成类图。 试试看:)。 只需将插件复制到您的插件目录 是我用的。可以从存储库轻松地:
Name: ObjectAid UML Explorer
Location: http://www.objectaid.com/update/current
并生成非常好的UML图:
网站描述:
ObjectAid UML Explorer不同于其他UML工具。它使用
显示现有代码的图形表示的UML符号
这与您的文本编辑器一样准确和最新,同时
非常容易使用。几个独特的功能使这成为可能:
- 您的源代码和库是显示的模型,它们不会反向工程为不同的格式
- 如果在Eclipse中更新代码,那么图表也会更新;不需要对源代码进行反向工程
- 重构会更新图表和源代码。重命名字段或移动类时,图表只反映 更改而不失去同步
- Eclipse工作区中的所有图表都会根据需要使用重构更改进行更新。如有必要,它们将从您的帐户中签出 版本控制系统
- 图完全集成到EclipseIDE中。您可以将Java类从任何其他视图拖到关系图上,并与关系图相关 如适用,信息显示在其他视图中
2013年10月11日更新 我最初的帖子是在2012年6月,很多东西都发生了变化,很多工具都有所发展,而其他工具则没有。因为我要回去做一些建模,也得到了一些回复,所以我决定再次安装papyrus,并将再次研究其他可能的UML建模解决方案。UML生成(具有同步功能)对软件设计师来说并不是很重要,而是对普通开发人员来说很重要 我希望papyrus有一个简单的方法将类反向工程到UML类图中,如果反向工程有一个同步特性,那将是非常酷的,但不幸的是,papyrus项目充满了功能,我认为开发人员手头已经有很多,因为您对papyrus所做的许多操作可能不会给您任何响应,只是什么都没有发生,但无论如何,这超出了这个问题的范围 答案(2013年10月11日) 工具