使用SBT 0.10.0与ANTLR3生成源代码

发布于 2024-11-15 10:43:42 字数 212 浏览 3 评论 0原文

我如何使用 简单构建工具 (sbt) 0.10.0 生成任何类型的源代码基于 ANTLR3 语法?

我想如果我想在同一项目或同一父项目的子项目中使用生成的代码,我必须使用类似的插件。 SBT 0.10 有现有的插件吗? ...或者也许是不使用插件的另一种解决方案?

How would I use the simple build tool (sbt) 0.10.0 to generate any kind of source code based on an ANTLR3 grammar?

I guess I have to use a plugin for something like this, if I want to use the generated code within the same project or a subproject of the same parent project. Are there any existing plugins for SBT 0.10? ...or maybe another solution without using a plugin?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

メ斷腸人バ 2024-11-22 10:43:42

您不需要使用插件。

首先,您需要将 antlr 定义为依赖项。然后,您需要根据此页面定义源生成任务:

https://github。 com/harrah/xsbt/wiki/Common-Tasks

您的任务定义将如下所示:

sourceGenerators in Compile <+= sourceManaged in Compile map { dir =>
  <code to generate source from grammar files>
}

生成源代码的代码将在其中创建一个新的 org. antlr.Tool 对象,将您的文件作为构造函数的参数。创建 Tool 对象后,调用 process 方法,并且应该生成源代码。

You won't need to use a plugin.

First you will need to define antlr as a dependency. Then you will need to define your source generation task according to this page:

https://github.com/harrah/xsbt/wiki/Common-Tasks

Your task definition is going to look something like this:

sourceGenerators in Compile <+= sourceManaged in Compile map { dir =>
  <code to generate source from grammar files>
}

Where the code to generate your source will create a new org.antlr.Tool object with your files as an argument to the constructor. Once you have created a Tool object, then invoke the process method, and your source should be generated.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文