以前永続化された EMF モデル リソースを Eclipse プラグイン環境からロードしたいと考えています。私は次のようにしてみました。
// obtain a new resource set
ResourceSet resSet = new ResourceSetImpl();
// get the resource
resSet.getResource(URI.createURI(location), true);
location
platform:/resource/Project/default.mymodel など、プラットフォームへの相対パスです。
を使用してリソースを取得しようとすると、URI.createURI(...)
「ClassCastException
MymodelFactoryImpl は org.eclipse.emf.ecore.resource.Resource$Factory にキャストできません」というメッセージが表示されます。
これは説明できません。誰か助けてくれませんか?
私はすでに試しURI.createFileURI(location)
ました。これにより、IllegalArgumentException
「無効な相対パス名」が発生します。
よろしく
スタック トレースは次のようになります。java.lang.ClassCastException: de.uka.ipd.sdq.pcm.usagemodel.impl.UsagemodelFactoryImpl は、org.eclipse.emf.ecore.resource.impl で org.eclipse.emf.ecore.resource.Resource$Factory にキャストできません.ResourceFactoryRegistryImpl.convert(ResourceFactoryRegistryImpl.java:94) at org.eclipse.emf.ecore.resource.impl.ResourceSetImpl$2.delegatedGetFactory(ResourceSetImpl.java:458) at org.eclipse.emf.ecore.resource.impl.ResourceFactoryRegistryImpl. org.eclipse.emf.ecore.resource.impl.ResourceFactoryRegistryImpl.getFactory(ResourceFactoryRegistryImpl.java:86) の getFactory(ResourceFactoryRegistryImpl.java:145) org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.createResource(ResourceSetImpl. java:431) org.eclipse.emf.ecore.resource.impl.ResourceSetImpl.demandCreateResource(ResourceSetImpl.java: