StarUML对java做逆向工程有个限制:只能逆向jdk1.4及以下环境下写出来的代码。JDK1.5中的标记、泛型等都不支持,因而也逆向不了。
解决办法是使用别的工具导出,比如ArgoUML。我用这个东东逆向了我们的项目,然后再将uml导入star uml中。是不是很欠……
ArgoUML做逆向也有问题。各种莫名其妙的命名等等。不过不跑题了。下面是star uml的逆向方法。
28. 逆向工程
StarUML还可以从现有的Java代码创建一个类图,这被称为“reverse engineering”,当你想从现有的代码生成图表,或者你修改了SU生成的代码,并且想在图表中反应出来的时候,逆向工程功能就非常有用了。通过图表或者DrJava这样的文本编辑器去反复工作的过程,称作“round-trip engineering”。这也是面向对象变成中的一个基本过程。
l 到主菜单栏中选择“Tools/Java/Reverse Engineer...”,可以将现有的代码逆向工程。
l 选择Java代码所在的目录,并点击“Add”或“Add All”按钮,将它们包括在逆向工程过程中,然后单击“Next” 。
l 选择你想将类加入的模块,这里可能是“Model1”,然后“Next”。
l 在Option Setup里面:
n 确认“public”,“package”,“protected”和“private”是选中的(这是默认设置)。
n 同样,在默认情况下,单选按钮“Create the field to the Attribute”也是选中的。
n 除非你想SU创建其他东西,例如布局很糟糕的包含所有类的图表,不要选中“Create Overview Diagram”框。
n 当你对选项做了检查后,点击“Run”。
n SU will now import the classes in the selected files into your model. Click "Finish" to exit the dialog when it is complete.苏现在进口班,在被选定的文件到你需要的产品型号,点击"完成"退出对话框时,就完成了。
l SU会向你的模块添加导入的类,但不是你的图表。为了将它添加到您的图,只需要简单地从Model Explorer拖动它们即可
本文转自 斯然在天边 51CTO博客,原文链接:http://blog.51cto.com/winters1224/797899,如需转载请自行联系原作者