antlr4导入maven eclipse组合不工作可以';无法找到或加载语法
与antlr4导入maven eclipse组合不工作可以';无法找到或加载语法,eclipse,maven,maven-plugin,antlr4,Eclipse,Maven,Maven Plugin,Antlr4,与 ANTLR 4.7 Antlr4.7Maven插件 Eclipse Neon 4.6.2 我正在尝试使用ANTLR4的语法导入功能。 看 以iri语法为例 该语法基本上是试图将文本分为三部分: 分析器 雷克瑟 进口基本lexer零件 此时,我收到错误消息: 无法找到或加载语法LexBasic 我查过了 并向 并在以下网站上撰写了一篇维基文章: 然后,我将LexBasic.g4文件放入src/main/antlr4/imports目录并 错误依然存在。仅当我将LexBa
- ANTLR 4.7
- Antlr4.7Maven插件
- Eclipse Neon 4.6.2
无法找到或加载语法LexBasic
我查过了
无法找到或加载语法LexBasic
对未定义规则的引用
- 设置此项的正确方法是什么?
- 在哪里可以找到示例项目?
沃尔夫冈,我现在正处于类似的任务当中。我不知道进口选项。谢谢你。通过使用中引用的Maven配置,我能够像使用import语句一样成功地编译所有内容。然而,我认为问题在于Antlr4IDE插件本身。语法可以编译,但Eclipse应该识别导入。也可以在上面的帖子中查看Sam的评论。我知道他是ANTLR的一名贡献者,他的见解是正确的:也许我(和你)正在努力做的事情不值得付出努力。我会告诉你我还发现了什么。干杯。我对ANTLR 4.7、ANTLR v4 Maven插件、ANTLR 4 IDE Eclipse插件和Eclipse Oxygen也有同样的问题 如果您在Eclipse的problems视图中看到错误消息
找不到或加载语法,它来自ANTLR 4 IDE Eclipse插件。因此,如果您遵循了的指导原则(例如,您将语法/词法文件放在src/main/antlr4
目录下),这很好,您的maven项目应该编译无误。我从你的问题中了解到,你也是这样。为了消除eclipse插件的错误消息,我还需要将与源目录相同的目录添加到我的项目中(即,转到project settings/Java Build Path/(source tab)
,并将src/main/antlr4/…(yourgram.g)
文件夹添加到源文件夹中
更新
我试图编译您的github repo,尽管缺少一些依赖项,但您的pom似乎很好。我还注意到您在示例中使用了org.antlr.v4.runtime.tree.gui.TreeViewer
,该示例自antlr 4.5.1以来不可用,因此您可以使用早期的antlr版本(例如4.5),或取消对此代码的注释。我为您创建了一个拉取请求,以便您可以查看我的更改
另一个注意事项(当我在玩你的项目时)是,antlr4ide插件会在每个语法文件(取决于它)中的每一个小更改生成LexBasic.g4 lexer,这看起来很烦人。我建议在项目设置中禁用该工具(ANTLR4/tool
)。无论如何,您都将通过maven编译该项目。因此,您仍然可以使用antlr4ide的基本功能(例如语法高亮显示、索引)对于该项目,但它不会为每个小更改重新生成语法。感谢您的研究。您的设置与我的类似。主要问题仍然是可能的无休止循环,我无法找出原因。这个“无休止循环”听起来很有趣,所以我仔细查看了您的项目。查看我在更新的答复。