JavaCC

描述

在语法文件上调用 JavaCC 编译器编译器。

要使用 javacc 任务,请将 target 属性设置为要处理的语法文件的名称。您还需要使用 javacchome 属性指定包含 JavaCC 安装的目录,以便 Apache Ant 可以找到 JavaCC 类。可选地,您还可以设置 outputdirectory 将生成的 文件写入特定目录。否则,JavaCC 会将生成的 文件写入包含语法文件的目录。

此任务仅在语法文件比生成的 .java 文件更新时才调用 JavaCC。JavaCC 假设生成的解析器的 Java 类名与语法文件的名称相同,忽略 .jj。如果不是这种情况,javacc 任务仍然可以工作,但它将始终生成输出文件。

参数

属性 描述 必需
target 要处理的语法文件。
javacchome 包含 JavaCC 发行版的目录。
outputdirectory 要将生成的 文件写入的目录。如果未设置,则将文件写入包含语法文件的目录。
buildparser 设置 BUILD_PARSER 语法选项。这是一个布尔选项。
buildtokenmanager 设置 BUILD_TOKEN_MANAGER 语法选项。这是一个布尔选项。
cachetokens 设置 CACHE_TOKENS 语法选项。这是一个布尔选项。
choiceambiguitycheck 设置 CHOICE_AMBIGUITY_CHECK 语法选项。这是一个整数选项。
commontokenaction 设置 COMMON_TOKEN_ACTION 语法选项。这是一个布尔选项。
debuglookahead 设置 DEBUG_LOOKAHEAD 语法选项。这是一个布尔选项。
debugparser 设置 DEBUG_PARSER 语法选项。这是一个布尔选项。
debugtokenmanager 设置 DEBUG_TOKEN_MANAGER 语法选项。这是一个布尔选项。
errorreporting 设置 ERROR_REPORTING 语法选项。这是一个布尔选项。
forcelacheck 设置 FORCE_LA_CHECK 语法选项。这是一个布尔选项。
ignorecase 设置 IGNORE_CASE 语法选项。这是一个布尔选项。
javaunicodeescape 设置 JAVA_UNICODE_ESCAPE 语法选项。这是一个布尔选项。
jdkversion 设置 JDK_VERSION 选项。这是一个字符串选项。
keeplinecolumn 设置 KEEP_LINE_COLUMN 语法选项。这是一个布尔选项。
lookahead 设置 LOOKAHEAD 语法选项。这是一个整数选项。
optimizetokenmanager 设置 OPTIMIZE_TOKEN_MANAGER 语法选项。这是一个布尔选项。
otherambiguitycheck 设置 OTHER_AMBIGUITY_CHECK 语法选项。这是一个整数选项。
sanitycheck 设置 SANITY_CHECK 语法选项。这是一个布尔选项。
static 设置 STATIC 语法选项。这是一个布尔选项。
unicodeinput 设置 UNICODE_INPUT 语法选项。这是一个布尔选项。
usercharstream 设置 USER_CHAR_STREAM 语法选项。这是一个布尔选项。
usertokenmanager 设置 USER_TOKEN_MANAGER 语法选项。这是一个布尔选项。
maxmemory 分配给分叉 JVM 的最大内存量。自 Ant 1.8.3 起

示例

在语法文件 src/Parser.jj 上调用 JavaCC,将生成的 文件写入 build/src。在调用 JavaCC 时,STATIC 语法选项设置为 true

<javacc target="src/Parser.jj"
        outputdirectory="build/src"
        javacchome="c:/program files/JavaCC"
        static="true"/>