2012-11-10 1 views
3

Lorsque je tente de charger un fichier EMF je reçois l'erreur suivante:Exception chargement du fichier EMF

Exception thrown: org.eclipse.emf.ecore.resource.Resource$IOWrappedException: Package with uri 'blah/blah' not found. (file:/C:/Temp/OPDiag1/blah1.opmeta, 2, 124)

Le code que je utilise pour essayer de charge:

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 
} 

Est-ce que quelqu'un a des idées pourquoi je reçois cette erreur?

Répondre

3

Vous devez enregistrer le package du métamodèle dans le registre de premier paquet:

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

Pour un modèle UML par exemple, il serait « UMLPackage.eNS_URI », etc. Dans votre cas, je suppose qu'il doit quelque chose comme "OpmetaPackage.eNS_URI" et "OpmetaPackage.eINSTANCE".

Questions connexes