1
我已經通過Visual Paradigm 8繪製了一個類圖並將該項目導出爲XMI 2.1文件(導出爲UML2)。所以有兩個文件(test.xmi.uml
和test.xmi.profile.uml
)。 爲了解析test.xmi.uml
我寫使用eclipse UML2和電動勢此Java代碼:使用Eclipse UML2解析Visual Paradigm生成的XMI文件
ResourceSet set = new ResourceSetImpl();
set.getPackageRegistry().put(UMLPackage.eNS_URI, UMLPackage.eINSTANCE);
set.getResourceFactoryRegistry().getExtensionToFactoryMap().put(UMLResource.FILE_EXTENSION, UMLResource.Factory.INSTANCE);
Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put(UMLResource.FILE_EXTENSION, UMLResource.Factory.INSTANCE);
Resource res = set.getResource(URI.createFileURI("C:\\test.xmi.uml"), true);
EObject eobj = res.getContents().get(0);
但輸出對象(eobj
)爲AnyTypeImpl
,其不能被讀得非常好。 我該怎麼做才能通過解析這個文件來得到格式良好的對象,如org.eclipse.uml2.uml.Model
對象?