Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Scala -xDisableAssertions和下面的-Xelide不关闭asserts_Scala_Compilation_Sbt_Assert_Scalac - Fatal编程技术网

Scala -xDisableAssertions和下面的-Xelide不关闭asserts

Scala -xDisableAssertions和下面的-Xelide不关闭asserts,scala,compilation,sbt,assert,scalac,Scala,Compilation,Sbt,Assert,Scalac,我目前正在从事一个Scala项目,即使用SBT,我正在尝试生成生产构建设置,其中一个条件是所有断言都被关闭。我只是在build.sbt中添加了一行: scalacOptions ++= Seq(..., "-Xdisable-assertions") 我在调试时运行logLevel,我看到选项被传递给编译器,但是当我运行程序(其长期运行的程序分析)时,我遇到了一个断言。尽管种种迹象表明,所有的资产都应该被汇编掉。我已经尝试了这两个恶魔的断言,和下面的elide,没有结果。如果有人能告诉我我做错

我目前正在从事一个Scala项目,即使用SBT,我正在尝试生成生产构建设置,其中一个条件是所有断言都被关闭。我只是在build.sbt中添加了一行:

scalacOptions ++= Seq(..., "-Xdisable-assertions")
我在调试时运行logLevel,我看到选项被传递给编译器,但是当我运行程序(其长期运行的程序分析)时,我遇到了一个断言。尽管种种迹象表明,所有的资产都应该被汇编掉。我已经尝试了这两个恶魔的断言,和下面的elide,没有结果。如果有人能告诉我我做错了什么,那就太好了。我已经写了很多Scala,但除了一些基本项目之外,我还没有使用SBT

编辑
build.sbt
后,您是否在sbt中运行“重新加载”?因为我试着构建一个小项目,所有断言都被愉快地编译掉了。作为记录,我使用的是sbt
0.12.0


以下是我使用的示例项目:

btest/
├── [  86]  build.sbt
└── [  45]  Main.scala
build.sbt:

scalacOptions ++= Seq("-deprecation", "-unchecked", "-Xlint", "-Xdisable-assertions")
Main.scala:

object Main extends App {
  assert(1 != 1)
}

我觉得如果你在那一行中把“++=”改成“++=”,它就可以开始工作了。@Rogach奇怪的是,这不会导致编译错误(至少,jroesch没有抱怨)@om nom nom nom-好吧,这确实会导致编译错误。我的代码确实有+++=,只是我的一部分有一个拼写错误,似乎所有的东西都在正确地重新编译,这就是为什么我对结果有点困惑的原因,我会再检查一下,然后再给你回复。所以今天早上当我回到实验室重新开始工作时,我决定从sbt 0.12.1降级,显然这解决了问题。@jroesch-在xsbt bug tracker中提交一个bug可能是值得的。