【发布时间】:2014-04-07 19:51:59
【问题描述】:
我正在使用sourceGenerators in Compile 生成一些 Scala 源文件到 target\scala-2.10\src_managed。当我运行sbt compile时,会生成源代码并与 src\main\scala 下的常规代码一起编译。
但是如果我想单独生成源而不编译怎么办?我正在寻找的是这个流程:
- 调用任务生成源代码
- 在我的常规资源中使用生成的资源来获得 IDE 帮助
- 编译一切
如何做到这一点?
【问题讨论】:
-
利用到底是什么意思?这是关于IDE设置的问题吗?因为您当然可以从生成的源到非托管的源进行交叉引用,反之亦然......
-
@I.K:是的,我已经阅读了这些帖子,但是如果您使用 sourceGenerators,我看不出如何在不运行
sbt compile的情况下生成代码。我现在在我的应用程序的项目文件夹中添加了一个 Generators.scala 文件。然后我在 build.sbt 中添加了一个新任务(makeGamedata),它使用 Generators 类生成源代码。所以我的开发周期现在是:sbt makeGamedata> 在src/main/scala上编写代码,使用生成的源代码 >sbt compile编译所有内容。这很好用。现在我需要弄清楚如何在项目文件夹中对代码进行单元测试.. -
@Martin Ring:马丁,是的,它工作得很好,但它们总是一起生成和编译的。我想将生成作为一项额外任务进行,即
sbt generate在src_managed中生成源代码> 在src/main/scala中开发使用这些源代码的代码> 编译所有内容。 -
@reikje:我还是不明白你所说的使用这些来源的代码是什么意思?