2015-10-05 3 views
-1

Как я могу спросить UMLGraph о создании единой диаграммы для всех лежащих в основе классов .java в пакете?Использование UMLGraph для генерации одноточечного файла для нескольких классов java

Я использую UMLGraph вместе с Graphviz для создания файла диаграммы UML .png. Команда, я бегу к geenrate a.dot файл является:

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

Это работает успешно в geenrate в .dot файл.

Однако я хочу создать из них одну диаграмму UML (все они связаны друг с другом через java-код). «UML-анализатор тест-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 путем, и я исправил ее. Спасибо что подметил это. Теперь я могу запустить команду, которую вы предложили, без каких-либо ошибок. В моем пакете (папках) «Персоны» есть 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 

Любая идея, почему это не разбор деталей класса?

ответ

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 
+0

Привет Спасибо за ответ :) На основании вашего ответа, я побежал следующую команду. ** java -classpath "C:/Program Files (x86) /Java/jre1.8.0_60/bin/umlgraph.jar;C:/Program Files/Java/jdk1.8.0_20/lib/tools.jar" org .umlgraph.doclet.UmlGraph -package -output -D: /UMLGraph/UMLGraph-5.7_2.3-SNAPSHOT/javadoc/org/umlgraph/doclet | точка -Tpng -oumlgraph.png ** Однако, бросил ошибку говоря: Не удалось найти или загрузить основной класс org.umlgraph.doclet.umlgraph В команде я Gven путь для UMLgraph доклет. Любая идея, где я ошибаюсь? – pronessssssssssss

+0

Убедитесь, что файл C:/Program Files (x86) /Java/jre1.8.0_60/bin/umlgraph.jar действительно существует. Тип dir "C:/Program Files (x86) /Java/jre1.8.0_60/bin/umlgraph.jar" –

+0

Привет @Diomidis, , пожалуйста, обратитесь к вопросу за последний раз. Я отредактировал его. Неправильно вставить код в раздел комментариев. Спасибо большое! :) – pronessssssssssss

Смежные вопросы