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,如需轉載請自行聯系原作者