#java #ant #uml #umlgraph
#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.
пожалуйста, помогите мне, ребята, я новичок в этом.
Цель javadoc в ant-файле ::
<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>
Комментарии:
1. Ant не находит «точку» или «dot.exe «на ТРОПИНКЕ. Какую ОС вы используете (Windows, Unix и т. Д.)?
2. @ChadNouis :: я использую Windows 7
3. @ChadNouis :: я загрузил файловый процессор graphViz dot с graphviz.org/Download_source.php , и указал путь к ячейке .. на самом деле я пытаюсь сделать это, следуя этому tutorial::java.dzone.com/articles/reverse-engineer-source-code-u
4. В командной строке выполните следующее и опубликуйте результат:
ant -diagnostics | findstr java.library.path
5. Где находится ваш точечный исполняемый файл? Содержит ли путь пробелы, подобные
program files
?
Ответ №1:
Я получил то же сообщение «точка». http://sourceforge.net/p/schemaspy/discussion/462849/thread/38a9bfad/#7a89 указывает на необходимость перезагрузки компьютера после установки GraphViz и добавления его в свой path. Я сделал это, и это сделало свое дело.
Ответ №2:
Добавьте путь к graphviz-2.38 release в свой путь к классу, и все готово.
Ответ №3:
У меня были общие проблемы с 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:OracleMiddlewareOracle_Homeoracle_commonmodulesmysql-connector-java-commercial-5.1.22mysql-connector-java-commercial-5.1.22-bin.jar
-gv "C:Program Files (x86)Graphviz2.38"
Ответ №4:
Для этого требуется установка GraphViz. Информация доступна здесь . https://graphviz.gitlab.io/download /