ANTLR 插件扩展自 Java 插件并添加了对使用 ANTLR 的生成解析器的支持。
The ANTLR plugin extends the Java plugin to add support for generating parsers using ANTLR.
ANTLR插件只支持ANTLR版本2。
The ANTLR plugin only supports ANTLR version 2.
要使用 ANTLR 插件,请在构建脚本中包含以下语句:
To use the ANTLR plugin, include in your build script:
ANTLR 插件向你的项目添加了许多任务,如下所示。
The ANTLR plugin adds a number of tasks to your project, as shown below.
表 40.1. ANTLR 插件——任务 - Table 40.1. ANTLR plugin - tasks
任务名称 Task name |
依赖于 Depends on |
类型 Type |
描述 Description |
generateGrammarSource |
- | AntlrTask |
为所有生产 ANTLR 语法生成源文件。 Generates the source files for all production ANTLR grammars. |
generateTestGrammarSource |
- | AntlrTask |
为所有测试 ANTLR 语法生成源文件。 Generates the source files for all test ANTLR grammars. |
generate |
- | AntlrTask |
为给定源集的所有 ANTLR 语法生成源文件。 Generates the source files for all ANTLR grammars for the given source set. |
ANTLR 插件向 Java 插件所添加的任务添加了以下依赖。
The ANTLR plugin adds the following dependencies to tasks added by the Java plugin.
表 40.2. ANTLR 插件——附加的任务依赖 - Table 40.2. ANTLR plugin - additional task dependencies
任务名称 Task name |
依赖于 Depends on |
CompileJava | generateGrammarSource |
compileTestJava | generateTestGrammarSource |
compileSourceSet Java |
generateSourceSet GrammarSource |
表 40.3. ANTLR 插件——项目布局 - Table 40.3. ANTLR plugin - project layout
目录 Directory |
意义 Meaning |
src/main/antlr |
生产 ANTLR 语法文件。 Production ANTLR grammar files. |
src/test/antlr |
测试 ANTLR 语法文件。 Test ANTLR grammar files. |
src/ |
给定源集的 ANTLR 语法文件。 ANTLR grammar files for the given source set. |
ANTLR 插件添加了一个 antlr
依赖配置,你可以使用它来声明你希望使用的 ANTLR 依赖。
The ANTLR plugin adds an antlr
dependency configuration. You use this to declare the ANTLR dependency that you wish to use.
示例 40.2. 声明 ANTLR 版本 - Example 40.2. Declare ANTLR version
build.gradle
repositories {
mavenCentral()
}
dependencies {
antlr 'antlr:antlr:2.7.7'
}
ANTLR 插件不添加任何约定属性。
The ANTLR plugin does not add any convention properties.
ANTLR 插件向项目的每一个源集添加了下列属性。
The ANTLR plugin adds the following properties to each source set in the project.
表 40.4. ANTLR 插件——源集属性 - Table 40.4. ANTLR plugin - source set properties
属性名称 Property name |
类型 Type |
默认值 Default value |
描述 Description |
antlr |
SourceDirectorySet (只读) SourceDirectorySet (read-only) |
不为 null Not null |
此源集的 ANTLR 语法文件。包含在ANTLR源目录中找到的所有.g 文件,并排除所有其他类型的文件。 The ANTLR grammar files of this source set. Contains all .g found in the ANTLR source directories, and excludes all other types of files. |
antlr.srcDirs |
Set<File> 。可以使用《第 16.5 节,“指定一组输入文件”》中所讲到的任何一种方法来设置。 Set<File> . Can set using anything described in Section 16.5, “Specifying a set of input files”. |
[ |
包含该源集的 ANTLR 语法文件的源目录。 The source directories containing the ANTLR grammar files of this source set. |