By Alvin Alexander. Last updated: June 5, 2017
If you add ScalaCheck to an SBT project like this:
libraryDependencies += "org.scalacheck" %% "scalacheck" % "1.13.4" % "test"
it’s only available in the SBT “test” scope. This means that when you start a Scala REPL session inside of SBT with its console
command, the ScalaCheck library won’t be available in that scope.
To use ScalaCheck with the SBT console (REPL), don’t use its console
command — use test:console
instead. A complete example looks like this:
$ sbt > test:console scala> import org.scalacheck.Gen.choose
Note that after you type test:console
your project may be compiled, so that step may take a few moments.
In summary, use SBT’s console
command to start a “normal” Scala REPL inside SBT, and use test:console
to start a REPL that you can run tests inside of. (Note that this same advice also applies to using ScalaTest or specs2.)