我知道你不喜欢在做作业时帮助别人,但是我必须制作一个XText语法,编写一个匹配这个语法的示例代码并将其编译成一个html文件。
讲师向我们展示了步骤,一切都对他有用......他说“这很简单,为你做10分钟的工作”。我相信这一点。然而,在家里几乎没有任何工作按预期。当然,没有更多的讲座只能参加考试,我必须展示我所做的事情。此外,我发给他的电子邮件被邮件恶魔反弹......
我从xtext网站获得了Xtext以及Eclipse IDE,我解压缩了它,然后我按照官方tuturial中的步骤使默认项目模板工作。可在此处找到该教程:http://wiki.eclipse.org/Xtext/GettingStarted
现在我正处于“模范”阶段。它说打开“MyModel.mydsl”,我这样做,但编辑器没有打开。它说:
“无法打开编辑器:编辑器类无法实例化。这通常表示缺少无参数构造函数或编辑器的类名在plugin.xml中输入错误。”
由于生成了所有内容,错误消息对我没有帮助... 有一个选项可以查看堆栈跟踪(它是一英里长),并且在它的顶部有一个例外:
java.lang.IllegalStateException:尚未激活捆绑包。确保Manifest.MF包含'Bundle-ActivationPolicy:lazy'。
我打开了Manifast.MF和Bundle-ActivationPolicy:设置了懒惰......
我用谷歌搜索解决方案,但无济于事。它让我疯了,我放弃了。
我没有使用Eclipse,Java和XText的经验,我只想做我的作业而忘记一切,直到我再次需要它...
任何人都有使用XText的经验吗?
任何帮助表示感谢。
ps:我也会参与其中,我可能会在几个小时内解决问题。但现在我不知所措。
答案 0 :(得分:1)
您的eclipse / XText安装似乎存在问题。你是怎么安装它的?如果您有Eclipse并在之后添加了插件,则需要确保版本兼容。
捆绑销售here
答案 1 :(得分:1)
一种可能性:在部署步骤中,请通过查看插件文件夹中的Xtext安装目录来检查您是否实际创建了三个插件?如果它们放在不同的位置,您可以将它们移动到plugins文件夹中。并且,你在安装这些插件后重新启动了Xtext eclipse吗?除非重新启动,否则平台将无法识别这些插件(和MyDsl编辑器)。
答案 2 :(得分:1)
我终于能够解决问题了。我意识到我可以跳过整个部署步骤,我不需要为我的DSL制作语法检查插件。我发现让事情有效我需要分配所有的代币。
所以
SomeDeclaration:
'declare' STRING
是一个结构良好的xtext,但是当我编译我的语言时它不会起作用。这将导致许多神秘的错误...
SomeDeclaration
'declare' declaredStuff=STRING
意愿。
这是一个漫长的过程......我做了10分钟的工作8小时......
我希望这会有助于其他人开始使用XText。
答案 3 :(得分:1)
我遇到了完全相同的问题(得到错误“无法打开编辑器:编辑器类无法实例化。”)当我试图在eclipse中查看我的DSL时。
然后我尝试了在eclipse和xtext中更改配置文件的所有内容,但没有成功。
我唯一的解决方案是重新安装所有内容。我正在运行64位版本的Windows(64位Vista)但只有32位JVM和JDK。所以那些,eclipse和xtext被更新到最新的64位版本,只有这样才能正常工作。
我怀疑这是eclipse而不是xtext的问题,而对Helios(64位eclipse)的更新可能是产生差异的原因。