ANTLR和Eclipse(或任何体面的IDE)

时间:2013-06-22 20:21:34

标签: eclipse antlr antlr4 antlrworks

我使用ANTLRv3IDE插件已经使用ANTLR和Eclipse一段时间了。虽然它并不完美,而且有点过时,但它的工作相当不错。

现在我希望切换到我正在创建的另一个DSL的ANTLRv4。但是,Eclipse支持似乎非常薄。我决定试用一个NetBeans插件的ANTLRWorks,但我无法安装它(它似乎被锁定到特定的日期版本(201302132200,而我有更新的东西,仍然是文档说的7.3)依赖项。) / p>

所以,问题是:有没有人设置任何 Java IDE(最好是Eclipse,但我可以说服切换,如果支持对其他东西有好处)与ANTLR集成?使用集成,我的意思是:代码生成保存/键盘快捷方式和语法着色(至少)。代码完成和其他功能当然很好,但我现在可以没有它们。

我很清楚Xtext,我在一些项目中使用它非常成功,但不幸的是它不适合这里的需求(不需要IDE支持,需要我自己的DSL模型不基于ECore等)。 / p>

我知道ANTLRWorks可以在没有Java IDE的情况下作为独立应用程序运行,但我认为这是最后的解决方案,因为以这种方式工作非常麻烦(在应用程序之间切换,文件不同步,没有VCS支持等)。我尝试了另一种方法:将Java部件安装到ANTLRworks(它本身是一个NetBeans发行版)中,但它并没有很好地结束(似乎基本的项目支持等被从ANTLRworks中删除)。

4 个答案:

答案 0 :(得分:6)

Eclipse的Antlr4插件在这里:

https://github.com/jknack/antlr4ide

答案 1 :(得分:3)

  • ANTLRWorks 2使用来自NetBeans的许多非公共接口,这意味着它将始终绑定到特定版本。独立下载将始终有效,因为它本身捆绑了依赖项。

  • standalone build of ANTLRWorks 2.1可用。此版本包括对ANTLR 4.1的支持。

  • 一旦发布NetBeans 7.4,就可以使用新的ANTLRWorks 2.1插件。

  • 接下来,ANTLRWorks 2.1之后的代码是open-source under an LGPL license

答案 2 :(得分:1)

我认为你已经下载了Netbeans 7.3.1。 尝试从https://netbeans.org/downloads/7.3/下载7.3并在那里安装ANTLRworks插件。 (链接到ANTLRworks更新中心:http://tunnelvisionlabs.com/downloads/nbupdates/nb73/aw2/updates.xml)。

请注意,ANTLRworks v2包含ANTLR v4.0,它不是ANTLR(4.1)的当前版本。所以也从ANTLR下载文件夹(antlr-4.0-complete.jar文件)下载ANTLR v4.0并将其用作库进行编译。

现在你几乎可以使用你想要的所有东西了。

答案 3 :(得分:0)

ANTLRv3IDE是opensourced。它应该可以编译为Juno。对于stringtemplate(ST4),请查看Hastee plugin。它支持一些ST4结构。