ANTLR 错误 134

ANTLR error 134

我正在尝试使用 antlr4 包为 Python 中的 Java 构建抽象语法树。 我已经从 Java 下载了语法 https://github.com/antlr/grammars-v4/blob/master/java8/Java8.g4

我想使用该语法文件为 Python2 生成 JavaLexer 和 JavaParser。

当我说

"$ antlr4 -Dlanguage=Python2 Java8.g4"

一个错误occured.That错误是

error(134): Java8.g4:73:0: symbol type conflicts with generated code in target language or runtime

注意:我已经删除了带有 Character.isJavaIdentifierPart() 的部分。因为这些行不适合 python,我将只使用 ASCII。

Python 具有名为 type 的内置函数。 Antlr4 打印语法第 73 行的错误:

type
    :   primitiveType
    |   referenceType
    ;

似乎存在名称冲突,您必须将 type 重命名为语法中的其他名称。