使用UMLGraph生成javadoc时出错,在处理过程中出现错误"点文件"

时间:2014-06-25 08:25:05

标签: java ant uml umlgraph

我试图通过UmlGraph从源代码生成类图。 我已经构建并创建了umlgraph.jar,但是当我在我的项目中使用它时它给了我以下错误::

[javadoc] java.io.IOException: Cannot run program "dot": CreateProcess error=2, The system cannot find the file specified
  [javadoc]     at java.lang.ProcessBuilder.start(ProcessBuilder.java:460)
  [javadoc]     at java.lang.Runtime.exec(Runtime.java:593)
  [javadoc]     at java.lang.Runtime.exec(Runtime.java:466)
  [javadoc]     at org.umlgraph.doclet.UmlGraphDoc.runGraphviz(UmlGraphDoc.java:131)
  [javadoc]     at org.umlgraph.doclet.UmlGraphDoc.generatePackageDiagrams(UmlGraphDoc.java:95)
  [javadoc]     at org.umlgraph.doclet.UmlGraphDoc.start(UmlGraphDoc.java:63)
  [javadoc]     at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
  [javadoc]     at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
  [javadoc]     at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  [javadoc]     at java.lang.reflect.Method.invoke(Method.java:597)
  [javadoc]     at com.sun.tools.javadoc.DocletInvoker.invoke(DocletInvoker.java:269)
  [javadoc]     at com.sun.tools.javadoc.DocletInvoker.start(DocletInvoker.java:143)
  [javadoc]     at com.sun.tools.javadoc.Start.parseAndExecute(Start.java:340)
  [javadoc]     at com.sun.tools.javadoc.Start.begin(Start.java:128)
  [javadoc]     at com.sun.tools.javadoc.Main.execute(Main.java:41)
  [javadoc]     at com.sun.tools.javadoc.Main.main(Main.java:31)

我已经下载了GraphViz并设置了graphviz的路径。 请帮助我们,我是这个人的新手。

ant文件::

中的javadoc目标

            

    <fileset dir="${srcroot.dir}" >
            <filename name="**/*.java"/>
        </fileset>

               <doclet name="org.umlgraph.doclet.UmlGraphDoc"
                  path="${umlLib.dir}/UmlGraph.jar">
                    <param name="-attributes"  />
                    <param name="-operations"  />
                    <param name="-qualify" />
                    <param name="-types"  />
                    <param name="-visibility"  />
                </doclet>
              </javadoc>
      <apply executable="dot" dest="${reports.dir}" parallel="false">
        <arg value="-Tpng"/>
        <arg value="-o"/>
         <targetfile/>
         <srcfile/>
         <fileset dir="${reports.dir}" includes="*.dot"/>
         <mapper type="glob" from="*.dot" to="*.png"/>
      </apply>
</target>

3 个答案:

答案 0 :(得分:3)

我得到了相同的“点”消息。 http://sourceforge.net/p/schemaspy/discussion/462849/thread/38a9bfad/#7a89表示在安装GraphViz并将其添加到路径后重新启动计算机。我这样做了,这就行了。

答案 1 :(得分:0)

将路径添加到\ graphviz-2.38 \ release到您的类路径,然后就完成了。

答案 2 :(得分:0)

我遇到了关于mysql-connector和dot可执行文件的常见问题。如果你将正确的值传递给-gv,没有必要重启机器,相信我。我安装了Graphviz,发现mysql-connector执行* .jar文件的排序搜索。

以下几行是我执行该陈述的方式。

java 
-jar schemaSpy.jar 
-t mysql 
-o library 
-host localhost 
-db dummyDB 
-u user
-p user
-dp C:\Oracle\Middleware\Oracle_Home\oracle_common\modules\mysql-connector-java-commercial-5.1.22\mysql-connector-java-commercial-5.1.22-bin.jar 
-gv "C:\Program Files (x86)\Graphviz2.38"