2016-07-01 10 views
-1

私は、eobjects.Nowクラスを含むecoreファイルを持っています。私はそのecoreファイルを読み込み、そのecoreファイルからすべてのクラスeオブジェクトを取得したいと思います。eclipseのeobjectsをeclipseで読む

答えて

2

特定のxmiファイルをカスタムサフィックスでリロードすることを意味しますか?ここ

public static EObject loadYourModel(String path) { 
    /*Initialzie Models*/ 
    YourPackage.eINSTANCE.eClass(); 

    /*register your xmi resources*/ 
    final Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE; 
    final Map<String, Object> m = reg.getExtensionToFactoryMap(); 
    /*put all your different ecore file suffixes in the map; suffix = YourPackage.eNAME*/ 
    m.put(YourPackage.eNAME, new XMIResourceFactoryImpl()); 
    /*you can put all different package names here*/ 

    /*Create a new Resource set to store the EObjects from the file*/ 
    ResourceSet resSet = new ResourceSetImpl(); 

    /*get the resource of your ecore file*/ 
    Resource resource = resSet.getResource(URI.createURI(path), true); 
    /*Get the first element = root of your model hierachy*/ 
    EObject root = resource.getContents().get(0); 
    return root; 
} 
を特定の場所(パス)でたEcoreファイルをロードし、ルートEObjectを返す方法の一例です
関連する問題