强制 ANTLR 在特定文件夹中生成输出文件 [英] force ANTLR to generate the output files in a specific folder

查看:30
本文介绍了强制 ANTLR 在特定文件夹中生成输出文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我不喜欢将 ANTLR 生成的文件与我的 .g4 语法和其他受版本控制的文档放在同一位置.我想将所有生成的文件放在一个单独的嵌套文件夹中,该文件夹可以通过 .gitignore 排除.到目前为止,我尝试的是在主文件夹内创建一个文件夹 并从该文件夹内运行:

I don't like to have the ANTLR generated files in the same location as my .g4 grammar and other version-controlled documents. I would like to put all the generated files in a separate nested folder that can be excluded via .gitignore. What I have tried so far is to create a folder <someFolder> inside the main folder and from inside that folder ran:

cd <someFolder>
antlr ../<grammarFile.g4>

但是,它仍然会溢出父文件夹中所有生成的文件.

however, it still spills all the generated files in the parent folder.

P.S.没关系,但我的环境是 macOS.

P.S. It shouldn't matter but my environment is macOS.

推荐答案

来自 https://github.com/antlr/antlr4/blob/master/doc/tool-options.md:

-o 外目录

ANTLR 默认在当前目录生成输出文件.此选项指定 ANTLR 应在其中生成解析器、侦听器、访问者和令牌文件的输出目录.

ANTLR generates output files in the current directory by default. This option specifies the output directory where ANTLR should generate parsers, listeners, visitors, and tokens files.

在上面的例子中,从主文件夹运行

in the example above, from the main folder run

antlr <grammarFile.g4> -o <someFolder>

这篇关于强制 ANTLR 在特定文件夹中生成输出文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆