1 回答

TA貢獻1909條經驗 獲得超7個贊
不是一個完美的解決方案,而是一個解決方案:
不幸的是,ANTLR 不會在 Sourcefolder 中生成包,它只生成帶有包聲明的類文件。所以你必須在包中生成它們:
這是一個 pom 示例:
<plugin>
? ? ? ? ? ? ? ? <groupId>org.antlr</groupId>
? ? ? ? ? ? ? ? <artifactId>antlr4-maven-plugin</artifactId>
? ? ? ? ? ? ? ? <version>4.7.1</version>
? ? ? ? ? ? ? ? <configuration>
? ? ? ? ? ? ? ? ? ? <outputDirectory>src/main/java/net/site/antlr</outputDirectory>
? ? ? ? ? ? ? ? </configuration>
? ? ? ? ? ? ? ? <executions>
? ? ? ? ? ? ? ? ? ? <execution>
? ? ? ? ? ? ? ? ? ? ? ? <goals>
? ? ? ? ? ? ? ? ? ? ? ? ? ? <goal>antlr4</goal>
? ? ? ? ? ? ? ? ? ? ? ? </goals>
? ? ? ? ? ? ? ? ? ? </execution>
? ? ? ? ? ? ? ? </executions>
? ? ? ? ? ? </plugin>
如果將其添加到 g 文件中:
@header {
? ? package net.site.antlr;
}
但使用此解決方案,您無法在不同的包中生成不同的語法。
添加回答
舉報