如何从libraryDependencies启用编译器插件?

卢卡斯·雷兹(Lukas Rytz)

我在库依赖项中有一个编译器插件,想启用它。就像是

autoCompilerPlugins := true

libraryDependencies += compilerPlugin(update.value.allModules.find(_.name contains "continuations-plugin").get)

scalacOptions += "-P:continuations:enable"

/Users/luc/scala/release-sanity-check/build.sbt:20: error: A setting cannot depend on a task
libraryDependencies += compilerPlugin(update.value.allModules.find(_.name contains "continuations-plugin").get)
                                  ^

我可以执行自定义任务吗?

val addContinuationsPlugin = taskKey[Unit]("Add continuations plugin")

addContinuationsPlugin := {
  val plugin = update.value.allModules.find(_.name contains "continuations-plugin")
  // add plugin?
}

有问题的存储库:https : //github.com/scala/scala-dist-smoketest

苏塞雷斯

您可能想要这样的东西(请参阅sbt API

scalacOptions ++= {
  val compileConfig = update.value.configurations.find(_.configuration == "compile").get
  val pluginModule = compileConfig.modules.find(_.module.name contains "continuations-plugin").get
  val pluginFile = pluginModule.artifacts.head._2
  Seq(s"-Xplugin:${pluginFile.getCanonicalPath}", "-P:continuations:enable")
}

当您使用Ivy解析插件时,compilePlugin方法旨在简化任务,并且可以正确执行。

选项#2试图确保它们是compiler-plugin->compiler-plugin您的项目与您在其中发现延续插件的项目(最终会有一个compiler-plugin->default(compile)链接)之间的传递配置依赖链但是,在没有看到依赖树的情况下,我无法建议选项2(这是更可靠的方法)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Maven编译器插件

来自分类Dev

如何启用VS2013 c ++编译器功能?

来自分类Dev

Qbs:如何启用Qt快速编译器?

来自分类Dev

如何在Eclipse中重新启用编译器警告?

来自分类Dev

如何指定Maven编译器插件顺序

来自分类Dev

构建Jenkins插件时如何获取编译器警告

来自分类Dev

如何正确注册Rust编译器插件?

来自分类Dev

如何从本地路径包含 Scala 编译器插件?

来自分类Dev

在Maven项目中启用宏天堂Scala编译器插件

来自分类Dev

CLion:启用编译器错误/警告

来自分类Dev

启用C ++支持ARMCC编译器

来自分类Dev

启用C ++支持ARMCC编译器

来自分类Dev

使用编译器插件定义配置

来自分类Dev

Scala编译器插件,找到注释

来自分类Dev

Maven编译器插件失败?

来自分类Dev

使用编译器插件定义配置

来自分类Dev

如何为具有交叉构建支持的编译器插件制作sbt插件

来自分类Dev

使用Android Gradle插件进行编译时如何添加Java编译器选项?

来自分类Dev

如何判断是否为PE Win32启用了/ GS编译器

来自分类Dev

如何使用 MATRIX_EVAL 启用基于编译器的构建矩阵行?

来自分类Dev

如何利用插件利用自定义函数扩展Less编译器

来自分类Dev

如何基于$ JAVA_HOME env变量自动设置Maven编译器插件?

来自分类Dev

如何在编译器插件中修改板条箱的所有项目?

来自分类Dev

如何编写一个生成模块的Rust编译器插件?

来自分类Dev

如何在gradle插件中动态将参数传递给kapt编译器?

来自分类Dev

如何基于$ JAVA_HOME env变量自动设置Maven编译器插件?

来自分类Dev

如何解决 Element compilerArgs is not allowed here Maven 编译器插件中的错误?

来自分类Dev

启用编译器优化时未找到glibc

来自分类Dev

启用编译器优化时未找到glibc

Related 相关文章

  1. 1

    Maven编译器插件

  2. 2

    如何启用VS2013 c ++编译器功能?

  3. 3

    Qbs:如何启用Qt快速编译器?

  4. 4

    如何在Eclipse中重新启用编译器警告?

  5. 5

    如何指定Maven编译器插件顺序

  6. 6

    构建Jenkins插件时如何获取编译器警告

  7. 7

    如何正确注册Rust编译器插件?

  8. 8

    如何从本地路径包含 Scala 编译器插件?

  9. 9

    在Maven项目中启用宏天堂Scala编译器插件

  10. 10

    CLion:启用编译器错误/警告

  11. 11

    启用C ++支持ARMCC编译器

  12. 12

    启用C ++支持ARMCC编译器

  13. 13

    使用编译器插件定义配置

  14. 14

    Scala编译器插件,找到注释

  15. 15

    Maven编译器插件失败?

  16. 16

    使用编译器插件定义配置

  17. 17

    如何为具有交叉构建支持的编译器插件制作sbt插件

  18. 18

    使用Android Gradle插件进行编译时如何添加Java编译器选项?

  19. 19

    如何判断是否为PE Win32启用了/ GS编译器

  20. 20

    如何使用 MATRIX_EVAL 启用基于编译器的构建矩阵行?

  21. 21

    如何利用插件利用自定义函数扩展Less编译器

  22. 22

    如何基于$ JAVA_HOME env变量自动设置Maven编译器插件?

  23. 23

    如何在编译器插件中修改板条箱的所有项目?

  24. 24

    如何编写一个生成模块的Rust编译器插件?

  25. 25

    如何在gradle插件中动态将参数传递给kapt编译器?

  26. 26

    如何基于$ JAVA_HOME env变量自动设置Maven编译器插件?

  27. 27

    如何解决 Element compilerArgs is not allowed here Maven 编译器插件中的错误?

  28. 28

    启用编译器优化时未找到glibc

  29. 29

    启用编译器优化时未找到glibc

热门标签

归档