gpt4 book ai didi

eclipse - 如何解决错误 Mwe2Launcher : Couldn't find EClass for name

转载 作者:行者123 更新时间:2023-12-01 06:42:21 25 4
gpt4 key购买 nike

我创建了一个 Xpand 生成器。在它的 src/文件夹中,我定义了我的模型 My.nn 一个模板和一个工作流。

这是我的工作流.mwe2 文件的样子:

module workflow.NeuralNetworksGenerator

import org.eclipse.emf.mwe.utils.*

var targetDir = "src-gen"
var fileEncoding = "Cp1252"
var modelPath = "src/model"

Workflow {
component = org.eclipse.xtext.mwe.Reader {
// lookup all resources on the classpath
//useJavaClassPath = true

// or define search scope explicitly
path = modelPath

// this class will be generated by the xtext generator
register = org.xtext.example.neuralnetworks.NeuralNetworksStandaloneSetup {}
load = {
slot = "systems"
type = "System"
}
}

component = org.eclipse.xpand2.Generator {
expand = "templates::Template::main FOREACH systems"
outlet = {
path = targetDir
}
fileEncoding = fileEncoding
}
}

当我尝试将此工作流.mwe2 文件作为 MWE2 工作流运行时,出现以下错误:
0    INFO  AbstractExpressionsUsingWorkflowComponent - No meta models configured, using JavaBeans as default.
75 ERROR Mwe2Launcher - Problems running workflow workflow.NeuralNetworksGenerator: Couldn't find EClass for name 'System'.
java.lang.RuntimeException: Problems running workflow workflow.NeuralNetworksGenerator: Couldn't find EClass for name 'System'.
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:99)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:73)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:64)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:55)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.run(Mwe2Launcher.java:74)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Launcher.main(Mwe2Launcher.java:35)
Caused by: org.eclipse.emf.mwe.core.WorkflowInterruptedException: Couldn't find EClass for name 'System'.
at org.eclipse.xtext.mwe.SlotEntry.findEClasses(SlotEntry.java:135)
at org.eclipse.xtext.mwe.SlotEntry.put(SlotEntry.java:91)
at org.eclipse.xtext.mwe.AbstractReader.addModelElementsToContext(AbstractReader.java:95)
at org.eclipse.xtext.mwe.Reader.invokeInternal(Reader.java:166)
at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:126)
at org.eclipse.emf.mwe.core.lib.Mwe2Bridge.invoke(Mwe2Bridge.java:34)
at org.eclipse.emf.mwe.core.lib.AbstractWorkflowComponent.invoke(AbstractWorkflowComponent.java:201)
at org.eclipse.emf.mwe2.runtime.workflow.AbstractCompositeWorkflowComponent.invoke(AbstractCompositeWorkflowComponent.java:35)
at org.eclipse.emf.mwe2.runtime.workflow.Workflow.run(Workflow.java:19)
at org.eclipse.emf.mwe2.launch.runtime.Mwe2Runner.run(Mwe2Runner.java:97)
... 5 more

我用来创建特定工作流 mwe2 文件的示例取自 Xpand 引用手册。

这是来自 MANIFEST.MF 文件的插件依赖项列表:
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: my.neuralnetworks.generator.project
Bundle-SymbolicName: my.neuralnetworks.generator.project; singleton:=true
Bundle-Version: 1.0.0
Require-Bundle: org.eclipse.jdt.core;bundle-version="3.5.0",
org.eclipse.xtend.profiler;resolution:=optional,
org.apache.commons.logging,
org.apache.log4j;resolution:=optional,
com.ibm.icu;bundle-version="4.0.1",
org.antlr.runtime;bundle-version="3.0.0",
org.eclipse.core.runtime;bundle-version="3.5.0",
org.eclipse.emf.mwe.utils;bundle-version="0.7.0",
org.eclipse.emf.ecore.xmi;bundle-version="2.5.0",
org.eclipse.jface.text;bundle-version="3.5.0",
org.eclipse.xpand;bundle-version="0.7.0",
org.eclipse.xtend;bundle-version="0.7.0",
org.eclipse.xtend.typesystem.emf;bundle-version="0.7.0",
org.eclipse.xtend.backend;bundle-version="1.0.0";resolution:=optional,
org.eclipse.xtend.middleend.xpand;bundle-version="1.0.0";resolution:=optional,
org.eclipse.xtend.middleend.xtend;bundle-version="1.0.0";resolution:=optional,
neuralnetworks;bundle-version="1.0.0",
org.xtext.example.neuralnetworks;bundle-version="1.0.0",
org.eclipse.emf.ecore.xmi.source;bundle-version="2.7.0",
org.eclipse.jface.text.source;bundle-version="3.7.0",
org.antlr.runtime.source;bundle-version="3.2.0",
org.antlr.runtime_3.1.b1;bundle-version="3.1.0",
com.ibm.icu.source;bundle-version="4.4.2",
org.eclipse.jdt.core.source;bundle-version="3.7.0",
org.eclipse.emf.mwe2.launch;bundle-version="2.2.0"
Bundle-RequiredExecutionEnvironment: J2SE-1.5
Import-Package: nn

神经网络插件指的是我的图形编辑器的 gmf 项目,其中找到了元模型,而 org.xtext.example.neuralnetworks 是与我的文本编辑器对应的那个。

emf文件对应的ecore文件里面确实有EClass系统。

最佳答案

你的dsl看起来怎么样?它是否包含名为 System 的 EClass?
更新:刚刚看到您没有基于 Xtext 的元模型。因此,如果您想使用 Xtext Mwe Reader 组件,您必须使用 AbstractGenericResourceSupport 并注册您的 epackage 以及在此 Xtend2 示例中描述的 http://christiandietrich.wordpress.com/2011/07/29/xtend2-code-generators-with-non-xtext-models/

关于eclipse - 如何解决错误 Mwe2Launcher : Couldn't find EClass for name,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9231462/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com