当前位置: 首页 > 知识库问答 >
问题:

如何从Build.Scala引用sourceManaged设置

张绍晖
2023-03-14
object ProjectBuild extends Build {

  lazy val generateConfiguration = TaskKey[Seq[File]]("generateConfiguration")

  lazy val unscopedSettings = Seq(
    generateConfiguration <<=
      (libraryDependencies, sourceManaged).map { (dependencies, generatedRoot) =>
           // here goes implementation
        },
    sourceGenerators += generateConfiguration.taskValue
  )

  override lazy val settings = super.settings ++ inConfig(Compile)(unscopedSettings)
}

对未定义设置的引用:

{.}/compile:sourceManaged from{.}/compile:generateConfiguration(...web/project/build.scala:19)您是指compile:sourceManaged吗?

{.}/compile:sourceGenerators来自{.}/compile:sourceGenerators(...web/project/build.scala:33)您是指compile:sourceGenerators吗?

P.S.:sbt 0.13.8

scala 2.11.7

共有1个答案

郎德馨
2023-03-14

我似乎自己也发现了问题。

这不起作用的可能原因是我将自定义设置放入构建的方式--我试图重写构建的惰性val设置。由于我在build.scala中描述了我的任务,而不是在最终构建定义之前的build.sbt,因此似乎还没有定义依赖设置!它们将在以后默认导入build.sbt时设置。

有一次,我将项目中添加的自定义属性移到build.sbt,而将它们的定义留在build.scala中,一切都按预期进行。

尽管有关于*.scala和build.sbt之间的重写顺序的信息,以及一些简单的复合构建定义示例,但它并不那么明显。

 类似资料:
  • 问题内容: 我有以下几点: UITableViewController UITableView 自定义UITableViewCell子类 我为该单元格使用了一个.xib文件,它是一个子类。此自定义单元为单元按钮上的某些触摸事件处理IBAction。 我想从单元格中引用ViewController及其一些变量。 我应该如何从UITableViewCell类访问UITableViewControlle

  • 问题内容: 在Play Framework 2a)的最高答案中,阅读在Build.scala中定义的应用程序版本,建议在中指定应用程序版本号并通过加载。我在构建时正在使用并收到以下错误消息: 我认为这可能是由于Play 2.1构建依赖项必须指定为SBT插件,而不是Play的SBT插件的一部分引起的。我猜想我必须在中包含Play的核心库,但是我还无法弄清楚该怎么做。有任何想法吗? (注意:如果我的代

  • 问题内容: 在上述情况下,bean中的属性随环境而变化。在开发时,config的引用更改为。并在阶段中将参考更改为。问题在检入spring文件时出现。每次签入之前,我们都必须分析config的引用。如果config的引用具有签入的值,我们可能必须解释很多问题。 有什么解决方案可以使其自动化? 注意:春季版本为2.0.1 问题答案: 使用Spring的PropertyPlaceholderConfi

  • 问题内容: 对于多分支项目,我有一个声明性管道脚本,在该脚本中,我想读取文本文件并将结果存储为字符串变量,以供管道的后续步骤访问。使用摘要生成器,我尝试执行以下操作: 为此,这将是我的字符串。 在Jenkins控制台输出中出现错误: 我是否需要使用一个步骤来将Jenkins环境变量的输出设置为?如果是这样,怎么办? 谢谢 问题答案: 该错误是由于只允许您在指令中使用管道步骤。我知道一种解决方法是使

  • 问题内容: 如何为整个Eclipse项目设置java.library.path?我正在使用依赖于操作系统特定文件的Java库,并且需要找到.dll / .so / .jnilib。但是,应用程序始终会退出,并显示一条错误消息,指出在库路径中找不到这些文件。 我想将整个项目配置为使用库路径。我试图将路径作为VM参数添加到eclipse中的某些运行配置中,但这没有用。 问题答案: 不要弄乱图书馆的路径

  • 我的df有列'country'和'country code'作为当前索引。如何删除此索引并创建只计算行数的新索引?我会留下它的样子。我想做的就是在国家旁边添加一个新的索引。多谢!