我需要使用acceleo UML 2 4.0.0作为我的源模型的元模型。
不幸的是,启动acceleo代码会引发以下错误:
Exception in thread "main" org.eclipse.emf.ecore.resource.impl.ResourceSetImpl$1DiagnosticWrappedException: org.eclipse.emf.ecore.xmi.PackageNotFoundException: Package with uri 'http://www.eclipse.org/uml2/4.0.0/UML' not found. (file:/C:/Users/eclipse-workspace/exportsModels/src/model1/MyModel.uml, 3, 83)
我可以在ATL中使用UML 2 4.0.0,但不能使用acceleo。似乎我在EMF注册表上有这个包“运行时版本”,但不是“开发时版本”,这可能是问题所在。
我知道如何在acceleo中使用我的工作空间所拥有的元模型,但我无法找到UML 2 4.0.0元模型。我发现了一个旧的UML 2 4.0.0插件,但当我安装它(https://archive.eclipse.org/modeling/mdt/uml2/downloads/drops/4.0.0/R201206040919/)时,它也不工作。
也许有“扩展器SDK开发人员资源”插件可能会起作用,但我没有找到比2020-12更早的版本,带有UML 2 5.1(https://download.eclipse.org/staging/2020-12/reports/download.eclipse.org/staging/2020-12/index/org.eclipse.uml2.sdk.source.feature.jar_5.5.1.v20200302-1312.html)。
先谢谢你的帮助,
1条答案
按热度按时间8e2ybdfx1#
EMF说它找不到在URI“http://www.eclipse.org/uml2/4.0.0/UML”上注册的元模型。
如果您安装了正确版本的EclipseUML,则UML2 EPackage应该根据该URI注册。您的程序是否作为部署UML2插件的Eclipse应用程序的一部分运行?如果您的程序是一个常规的Java程序,您可能需要调用类似UMLPackage.eINSTANCE的东西,以便自动进行注册。
否则,我建议您在调试模式下运行程序,并检查EMF的EPackage注册表的内容。