有人帮我为什么我会收到此错误?
java.lang.SecurityException: class "org.eclipse.emf.ecore.resource.URIConverter$Loadable"'s signer information does not match signer information of other classes in the same package at java.lang.ClassLoader.checkCerts(ClassLoader.java:898)
我想加载一个元模型(dart.ecore)文件和一个模型文件(dartlang.dart)。
ResourceSet resourceSet = new ResourceSetImpl();
resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("ecore", new EcoreResourceFactoryImpl());
resourceSet.getResourceFactoryRegistry().getExtensionToFactoryMap().put("xmi", new XMIResourceFactoryImpl());
Resource myMetaModel= resourceSet.getResource(URI.createFileURI("./metamodel/dart.ecore"), true);
EPackage univEPackage = (EPackage) myMetaModel.getContents().get(0);
resourceSet.getPackageRegistry().put("http://gholizadeh.org", univEPackage);
Resource myModel = resourceSet.getResource( URI.createURI( "./model/dartlang.dartspec"), true);
import:
import org.eclipse.emf.common.util.URI;
import org.eclipse.emf.ecore.EPackage;
import org.eclipse.emf.ecore.resource.Resource;
import org.eclipse.emf.ecore.resource.ResourceSet;
import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
import org.eclipse.emf.ecore.xmi.impl.EcoreResourceFactoryImpl;
import org.eclipse.emf.ecore.xmi.impl.XMLResourceFactoryImpl;
谢谢!
答案 0 :(得分:0)
这通常是由于从不同的jar多次加载同一个类引起的。此处的答案详细说明并提供了一些不错的解决方案:java-securityexception-signer-information-does-not-match
最简单的两种解决方案是删除重复的jar文件,或者有时可以更改Eclipse构建中jar的顺序。
如果这还不足以帮助您,我们将需要有关您的项目设置的更多信息;例如您如何管理依赖性以及它是一个eclipse插件项目。