我即将离开我的职位,我需要留下文档来维护我的Java程序。我在项目开始时设计的类图都已过时,为了节省时间我想自动逆向工程类图。我无法弄清楚如何在Eclipse中使用UMLGraph - 我尝试使用LightUML插件,但错误地将其用于:
org.eclipse.core.runtime.CoreException:/Users/ctcyu/_EclipseWorkSpace/.metadata/.plugins/org.lightuml.core/build.xml:131:执行失败:java.io.IOException:无法运行程序“dot”(在目录“/Users/uname/_EclipseWorkSpace/.metadata/.plugins/org.lightuml.core”中):error = 2,没有这样的文件或目录 org.eclipse.core.runtime.CoreException:/Users/ctcyu/_EclipseWorkSpace/.metadata/.plugins/org.lightuml.core/build.xml:131:执行失败:java.io.IOException:无法运行程序“dot” (在目录“/Users/uname/_EclipseWorkSpace/.metadata/.plugins/org.lightuml.core”中):error = 2,没有这样的文件或目录
我看到程序“dot”在UMLGraph所需的Graphviz包中。由于我使用的是MacOSX,因此我下载了Graphviz的Mac软件包。它安装了一个Graphviz.app,我无法在任何地方找到任何“点”二进制文件。如果我从源代码编译,那么“dot”工具会有二进制文件吗?
如果我不使用LightUML,并在Eclipse中的“Generate Javadoc”工具中键入UMLGraph.jar的绝对路径,我会收到以下错误: javadoc:错误 - 找不到doclet类UMLGraph 1错误
如何在Eclipse中指定自定义doclet?或者,我如何使LightUML工作?我正在使用Eclipse Helios。
答案 0 :(得分:0)
几周前我离开了我以前的公司,必须承认他们对我的咨询非常满意。我的项目文档基于UML类图,主要是其他几个图。
我使用了一个名为O .... o EclipseUML的公司的工具将我的完整Java项目转换为UML。它不仅反转了代码,还反转了我所有的java持久性注释。 一旦我改变了我的项目以获得我的UML模型,然后我通过将类和接口拖放到空类图中来创建项目中的视图。我最终将许多注释直接放到图表中作为注释(例如黄色),并在一些图表中留下了java doc作为注释。
最后,我将代码附加了一个完整的模型和大约50个类图。我没有生成纸质文档,但如果您使用Eclipse Helios打开项目,那么每个包的根都有相关的类图,包括我的注释。如果单击其中一个图表中的类,则可以看到我的注释直接写在模型中。等等... 我会说我的文档现在与代码实时同步,通过在代码中导航并通过双击查看UML解释,新开发人员很容易在几个小时内理解整个项目。
我认为纸质文档没用,因为你永远不了解项目的全部范围。我相信我的项目使用UML与项目混合并与代码同步更强大。
希望这个帮助