如果我从 https://github.com/antlr/grammars-v4 下载 PlSql Grammar 文件(PlSqlParser.g4 和 PlSqlLexer.g4)并使用 Antlr4 运行它们,这成功创建了相关的包。正如其他地方所建议的,我然后粘贴名为 PlSqlParserBase.java 和 PlSqlListenerBase.java 的两个文件,然后尝试使用命令 javac Pl*.java 进行编译
这给了我以下我不遵循的错误。
PlSqlLexerBase.java:5: error: duplicate class: PlSqlParseTree.PlSqlLexerBase public abstract class PlSqlLexerBase extends Lexer ^ PlSqlLexer.java:12: error: cannot access PlSqlLexerBase public class PlSqlLexer extends PlSqlLexerBase { ^ bad source file: ./PlSqlLexerBase.java file does not contain class PlSqlLexerBase Please remove or make sure it appears in the correct subdirectory of the sourcepath. 2 errors
我想我一定错过了一个明显的步骤。有人可以帮助我编译源代码吗?
最佳答案
我能够通过注释掉 PlSqlLexerBase.java 和 PlSqlParserBase.java 中的包行来进行编译。
//package PlSqlParseTree;
关于java - 我在尝试将 PlSql Grammar 与 Antlr4 一起使用时是否错过了一个步骤?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58841927/