加载EMF文件的异常

时间:2012-11-10 07:13:47

标签: eclipse eclipse-emf eclipse-emf-ecore emf

当我尝试加载EMF文件时,出现以下错误:

  

抛出异常:   org.eclipse.emf.ecore.resource.Resource $ IOWrappedException:Package   与uri'blah / blah'未找到。 (文件:/ C:/Temp/OPDiag1/blah1.opmeta,   2,124)

我用来尝试加载的代码:

opmetaFactory.eINSTANCE.eClass();
Resource opmmResource = resourceSet.createResource(URI.createURI(uri));
try {
  opmmResource.load(null);
  opd = (OPMetaModelDiagram) opmmResource.getContents().get(0);
} catch(final IOException e) { 
  // log
}

有没有人知道我为什么会收到此错误?

1 个答案:

答案 0 :(得分:3)

您需要首先在包注册表中注册元模型的包:

resourceSet.getPackageRegistry().put(BlahPackage.eNS_URI, BlahPackage.eINSTANCE);

对于UML模型,例如它将是“UMLPackage.eNS_URI”等。在您的情况下,我认为它必须类似“OpmetaPackage.eNS_URI”和“OpmetaPackage.eINSTANCE”。

相关问题