antlr v4 使用指南连载2——准备环境

antlr v4 开发环境

        从上一篇文章的例子中可以知道,antlr有一套自己的语法来声明目标语言的语法,因此它本身就需要编译或者使用antlr提供的api来读取这些语法规则,并使之可以在目标平台上使用。比如我在用Java写一个SQL语言的解析工具,那么antlr就需要有Java平台的API给我使用。确实也是如此,只不过antlr除了提供这些API外,还会将g4这些语法文件编译成目标平台的类文件(仅对Java而言,其他语言也会编译成对应的文件)。这些编译生成的文件不需要使用者去关注,因为它们是给antlr自身使用的。使用者只需要关注antlr提供的API即可。

        综上所述,antlr有一套自己的编译环境。所以我们在使用antlr之前,需要准备好一些东西。以下是几种可行的方式:

  1. 文本编辑器 + Complete ANTLR 4.4 Java binaries.jar
  2. Eclipse + Complete ANTLR 4.4 Java binaries.jar + eclipse plugin
  3. IntelliJ IDEA + Complete ANTLR 4.4 Java binaries.jar + intellij idea plugin

        个人推荐使用方式3,IntelliJ IDEA确实比Eclipse好用,关键是不会卡;其次是插件系统也比eclipse好太多了。

方式1##

在开始之前,需要定制一下编译工具。

Linux版

#antlr4.sh
#Linux
#!/bin/sh
java -cp "/usr/local/lib/antlr4-complete.jar:$CLASSPATH" org.antlr.v4.Tool $*

Windows版

#antlr4.bat
#Windows
java -cp C:librariesantlr-4.0-complete.jar;%CLASSPATH% org.antlr.v4.Tool %*

编译antlr语法文件(以上篇文章中的示例代码为例)

antlr4 Hello.g4
javac *.java

这样就会在当前目录下生成几个Java文件。如HelloLexer.java、HelloParser.java等。antlr的编译参数,可根据情况选用。

ANTLR Parser Generator Version 4.0

-o___	specify output directory where all output is generated
-lib___	specify location of grammars, tokens files
-atn	generate rule augmented transition network diagrams
-encoding___	specify grammar file encoding; e.g., euc-jp
-message-format___	specify output style for messages in antlr, gnu, vs2005
-listener	generate parse tree listener(default)
-no-listener	don't generate parse tree listener
-visitor	generate parse tree visitor
-no-visitor	don't generate parse tree visitor(default)
-package___	specify a package/namespace for the generated code
-depend	generate file dependencies
-D<option>=value	set/override a grammar-level option
-Werror	treat warnings as errors
-XdbgST launch StringTemplate visualizer on generated code
-Xforce-atn use the ATN simulator for all predictions
-Xlog	dump lots of logging info to antlr-timestamp.log

方式二##

eclipse的antlr插件实在不好用,强烈不推荐使用。因此我也不在此说明安装方法了,一定要使用eclipse的同学,可自行google。

方式三##

  1. 下载IntelliJ IDEA antlr plugin
  2. 按以下图示步骤安装
    步骤一
    步骤1
    步骤二
    步骤2
    步骤三
    步骤3
    步骤四
    步骤4
    步骤五
    步骤5
  3. 重启完成之后,新建java项目-新建文件,然后将Hello.g4的代码复制进去。如下图,即可测试antlr的语法文件。
    测试Hello.g4

未完待续>>>##

原文地址:https://www.cnblogs.com/laud/p/antlrv4_2.html