-1

如何要求 UMLGraph 为包中的所有底层 .java 类生成单个图表?

我正在使用 UMLGraph 和 Graphviz 来生成一个 .png UML 图文件。我正在运行以生成 a.dot 文件的命令是:

java -jar C:/Program Files/Java/jdk1.7.0_80/lib/UmlGraph.jar -all -private A.java

这成功运行以生成 .dot 文件。

但是,我希望用它们创建一个单一的 UML 图(它们都通过 java 代码相互链接)。“uml-parser-test-1”(文件夹/包)包含大约 5 个 .java 文件,为此我正在运行

C:/Users/xyz > java -jar "C:/Program Files/Java/jdk1.8.0_60/lib/UmlGraph.jar" -all -private "D:/xyz/abcd/uml-parser-test-1/"

当我运行上面的代码时,我得到一个错误:UMLGRAPH ERROR - ILLEGAL PACKAGE NAME

我哪里错了

                      **EDIT:: 6th Oct**

umlgraph.jar 路径存在问题,我已更正。感谢您指出了这一点。现在我可以运行您建议的命令而不会出现任何错误。问题是我的“Persons”包(文件夹)包含 4 个 java 文件(A、B、C、D.java)。当我运行该命令时,它在命令行而不是在我的文件系统中生成 .dot 文件。此外,它不完整,因为没有关于类的信息:

下面是我的命令行的痕迹。

 C:\Users\xyz>java -classpath "C:/Program Files/Java/jdk1.8.0_60/lib/UmlGraph.jar;C:/Program Files/Java/jdk1.8.0_20/lib/tools.jar" org.umlgraph.doclet.UmlGraph -package -output - -sourcepath "C:/Program Files/Java/jdk1.8.0_60/lib/Persons" org.umlgraph.doclet

Loading source files for package org.umlgraph.doclet...
UmlGraph: warning - No source files for package org.umlgraph.doclet
Constructing Javadoc information...
UmlGraph: warning - No source files for package org.umlgraph.doclet
UMLGraph doclet version R5_7_2-3-gee82a7 started
Building general class diagram
#!/usr/local/bin/dot
#
# Class diagram
# Generated by UMLGraph version R5_7_2-3-gee82a7 (http://www.umlgraph.org/)
#

digraph G {
        edge [fontname="arial",fontsize=10,labelfontname="arial",labelfontsize=10];
        node [fontname="arial",fontsize=10,shape=plaintext];
        nodesep=0.25;
        ranksep=0.5;
}

2 warnings

任何想法,为什么它不解析课程详细信息?

4

1 回答 1

1

您必须在命令行调用中指定包名称及其源代码所在的目录。以下示例在 UMLGraph 目录中运行时,会为 UMLGraph 类生成一个图表。

java -classpath "lib/UmlGraph.jar;C:\Program Files\Java\jdk1.8.0_20/lib/tools.jar" org.umlgraph.doclet.UmlGraph -package -output - -sourcepath src/main/java org.umlgraph.doclet | dot -Tpng -oumlgraph.png
于 2015-10-05T11:47:51.200 回答