3

私は現在、SBTを使用しているScalaプロジェクトに取り組んでおり、条件の1つがすべてアサートがオフになっている本番ビルド設定を作成しようとしています。build.sbtに次の行を追加しただけです。

scalacOptions ++= Seq(..., "-Xdisable-assertions")

デバッグ時にlogLevelを実行していて、オプションがコンパイラーに渡されているのを確認しましたが、プログラム(長時間実行されているプログラム分析)を実行すると、アサートが発生します。すべての兆候によって、すべての主張はコンパイルされるべきですが。私はこれをdiable-assertionsとelide-belowの両方で試しましたが、結果はありませんでした。誰かが私が間違っていることについていくつかの指針を私に与えることができれば、それは素晴らしいことです。私はたくさんのScalaを書いてきましたが、いくつかの基本的なプロジェクト以外ではSBTをあまり使用していません。

4

1 に答える 1

3

編集後にsbtで「リロード」を実行しますbuild.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)
}
于 2012-10-31T15:32:06.240 に答える