gpt4 book ai didi

maven - 使用Maven构建时如何在Antlr4中导入语法?

转载 作者:行者123 更新时间:2023-12-04 10:52:41 26 4
gpt4 key购买 nike

我正在尝试用 Maven 构建一个 ANTLR 项目,项目结构就像

src/main +
|-antlr4
|-fo/bar
|-G1.g4
|-G2.g4
|-imports

其中 G1 导入 G2 如下:
grammar G1;
import G2;

但是,当我使用 Maven 构建时,出现以下错误:
[ERROR] Message{errorType=CANNOT_FIND_IMPORTED_GRAMMAR, args=[G2, fo\bar\G1.g4], e=null, fileName='null', line=-1, charPosition=-1}

如果我输入 G1.g4 就没有问题和 G2.g4直属 antlr4目录。在我看来,当把 语法 包中的文件,它需要在 import 语句中使用特殊语法。

我注意到这个问题 Antlr4 maven plugin cannot find grammar files in different directories ,但在这里,语法在 目录。

最佳答案

我认为您需要 G2.g4导入包( src/main/antlr4/imports )中的语法,但您将复制您的语法。为避免这种情况,请像这样更改 ANTLR 插件的导入设置:

<build>
<plugins>
<plugin>
<groupId>org.antlr</groupId>
<artifactId>antlr4-maven-plugin</artifactId>
<version>4.1</version>
<!-- vvv key part here vvv -->
<configuration>
<libDirectory>${basedir}/src/main/antlr4/fo/bar</libDirectory>
</configuration>
<!-- ^^^ key part here ^^^ -->
<executions>
<execution>
<goals>
<goal>antlr4</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

注意配置 libDirectory .

关于maven - 使用Maven构建时如何在Antlr4中导入语法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18124061/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com