显示从 SBT 构建发出的确切 scala 命令

2024-04-16

当我针对本地版本的 Scala 构建我的(相对复杂的)SBT 项目时,出现以下错误:

scalac error: bad option: '-Ydelambdafy:method'

这可能是一个错误scalac或我们的构建文件。但是,我无法在调用时重现此错误scalac直接地:

$ scalac -Ydelambdafy:method test.scala

这按预期运行。有没有办法让 SBT 显示准确的scalac命令有问题吗? (请注意,传递来自的确切标志scalacOptions to scalac也不会导致错误)。

scalacOptions is:

List(
  -deprecation,
  -unchecked,
  -feature,
  -encoding, utf8,
  -Ydelambdafy:method,
  -Xplugin:<...>/scala-js-test/compiler/target/scala-2.11.0-RC1/scalajs-compiler_2.11.0-RC1-0.4.1-SNAPSHOT.jar)`
)

有问题的存储库是scalajs-library的子项目Scala.js 大师 https://github.com/scala-js/scala-js与当前的构建斯卡拉大师 https://github.com/scala/scala as scalaHome.

要为此构建配置项目,请发出:

set every List(scalaHome := Some(file("<scalaHome>")), scalaVersion := "2.11.0-RC1")

在根项目中。


好吧,事情是这样的:sbt 实际上并不调用“scalac”。它直接调用编译器,创建并调用正确的类。

但是,如果您使用的是 SBT 0.13+,您可以获得其近似值would如果它确实直接运行它,则已运行,但这样做:

export compile

The export命令也适用于其他一些任务,但无论如何不是所有任务。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

显示从 SBT 构建发出的确切 scala 命令 的相关文章

随机推荐