可以解析但不能评估 xtext 算术示例
Can parse but not evaluate xtext arithmetics example
我正在查看 Eclipse 框架内的 XText,并对算术示例有疑问。我似乎能够解析表达式但不能对它们求值,我想知道是否应该如此。这是我的工作流程:
创建一个新的示例项目。选择 XText 简单算术示例。
打开 Arithmetics.xtext 并选择 运行 -> 外部工具 -> 运行 as -> "Generate XText artifacts"。
到目前为止没有错误消息。表单上的一堆信息消息:
119 [main] 信息 lipse.emf.mwe.utils.StandaloneSetup - 在 'file:/H:/2017/xtextworkspace/org.eclipse.xtext.example.arithmetics/'
注册项目 org.eclipse.xtext.example.arithmetics
119 [main] 信息 lipse.emf.mwe.utils.StandaloneSetup - 注册项目 org.eclipse.xtext.example.arithmetics. 在 'file:/H:/2017/xtextworkspace/org.eclipse.xtext.example.arithmetics.tests/'
进行测试
打开 plugin.xml 并单击 "Launch an Eclipse application"。
第二个 window 现在打开了,我现在可以创建一个新项目并开始输入表达式。
创建一个新项目和一个新文件调用 a.calc,内容如下:
(我似乎还必须在这里创建一个新的 Java 项目,这似乎有点违反直觉。在你的新 IDE 中难道不应该在这里有一个菜单选项吗喜欢 "Create new Calc Project"?).
module A
def a:2;
def b:1;
a+b;
编辑器似乎解析得很好,内容辅助正在工作,如果我做错了什么它会告诉我。但是实际上 运行 程序是不可能的吗?我想在这里有一个类似于 "Run -> Run as -> Calc application" 的选项,这不包括在算术示例中吗?我觉得应该是因为 calculator.java class 的其他目的是什么?如何让它打印出值?
您可以通过在编辑器中输入 "enter" 来计算表达式
module A
def a:2;
def b:1;
a+b;
// = 3
1+1;
// = 2
33*11;
// = 363
我正在查看 Eclipse 框架内的 XText,并对算术示例有疑问。我似乎能够解析表达式但不能对它们求值,我想知道是否应该如此。这是我的工作流程:
创建一个新的示例项目。选择 XText 简单算术示例。
打开 Arithmetics.xtext 并选择 运行 -> 外部工具 -> 运行 as -> "Generate XText artifacts"。 到目前为止没有错误消息。表单上的一堆信息消息:
119 [main] 信息 lipse.emf.mwe.utils.StandaloneSetup - 在 'file:/H:/2017/xtextworkspace/org.eclipse.xtext.example.arithmetics/'
注册项目 org.eclipse.xtext.example.arithmetics119 [main] 信息 lipse.emf.mwe.utils.StandaloneSetup - 注册项目 org.eclipse.xtext.example.arithmetics. 在 'file:/H:/2017/xtextworkspace/org.eclipse.xtext.example.arithmetics.tests/'
进行测试
打开 plugin.xml 并单击 "Launch an Eclipse application"。 第二个 window 现在打开了,我现在可以创建一个新项目并开始输入表达式。
创建一个新项目和一个新文件调用 a.calc,内容如下:
(我似乎还必须在这里创建一个新的 Java 项目,这似乎有点违反直觉。在你的新 IDE 中难道不应该在这里有一个菜单选项吗喜欢 "Create new Calc Project"?).
module A
def a:2;
def b:1;
a+b;
编辑器似乎解析得很好,内容辅助正在工作,如果我做错了什么它会告诉我。但是实际上 运行 程序是不可能的吗?我想在这里有一个类似于 "Run -> Run as -> Calc application" 的选项,这不包括在算术示例中吗?我觉得应该是因为 calculator.java class 的其他目的是什么?如何让它打印出值?
您可以通过在编辑器中输入 "enter" 来计算表达式
module A
def a:2;
def b:1;
a+b;
// = 3
1+1;
// = 2
33*11;
// = 363