maven - Antlr4 maven插件在不同目录下找不到语法文件

标签 maven antlr4

我正在使用 antlr4 maven 插件来构建我使用 antlr4 的 maven 项目:

     <groupId>org.antlr</groupId>
     <artifactId>antlr4-maven-plugin</artifactId>
     <version>4.0</version>

我从一个语法文件开始,然后设置了 pom.xml,一切都构建得很好。

然后我决定将我的语法分成逻辑部分,因此使用了几个语法文件,但在不同的目录中(因此生成的代码将放入单独的包中),但仍然都在同一个根目录 src/main/antlr4 下。

我使用“顶级”语法文件中的 import 语句来导入其他所需的文件。

但是现在maven在尝试构建时给了我以下错误:
[ERROR] Message{errorType=CANNOT_FIND_IMPORTED_GRAMMAR

为什么 antlr 找不到我正在导入的其他文件?

谢谢,
瑞安。

最佳答案

我遇到了同样的问题并通过以下配置解决了:

<libDirectory>${basedir}/src/main/antlr4/yourGrammarDirectory</libDirectory>

看这里:How to import grammar in Antlr4 to build with maven

关于maven - Antlr4 maven插件在不同目录下找不到语法文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17089494/

相关文章:

java - 将依赖项下载到本地目录时,Maven 依赖项插件命令行选项可排除可选依赖项

powershell - Antlr v4 : 'mismatched input'

java - 相互左递归 ANTLR 4

java - 如何在使用 ANTLR (使用 java)解析文件后保存文件?

java - Eclipse Java 项目和 Maven 的多个源文件夹

java - 从 Maven 中的依赖项中排除文件夹

python - ANTLR4 因 Lexer/Parser 错误而终止 Python

parsing - 安特尔 4 : Method for switching modes in parser

java - 启动 Spring 应用程序时出错 : Initialization of bean failed; nested exception is AbstractMethodError

java - Websphere Portal 8.5 上的 CXF 依赖性错误