使用SBT 0.10.0生成带有ANTLR3的源代码

时间:2011-06-12 13:42:20

标签: code-generation antlr3 sbt

我如何使用simple build tool (sbt) 0.10.0生成基于ANTLR3语法的任何类型的源代码?

如果我想在同一个项目或同一个父项目的子项目中使用生成的代码,我想我必须使用这样的插件。是否有现有的SBT 0.10插件? ...或者没有使用插件的其他解决方案?

1 个答案:

答案 0 :(得分:3)

您不需要使用插件。

首先,您需要将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方法,然后生成源代码。