Ошибка запуска Shapeless в REPL

Имеются следующие файлы SBT:

$cat shapeless_sandbox/build.sbt
name := "shapeless sandbox"

scalaVersion := "2.11.5"

libraryDependencies ++= Seq(
  "com.chuusai" %% "shapeless" % "2.1.0-RC1"
)

resolvers ++= Seq(
  Resolver.sonatypeRepo("releases"),
  Resolver.sonatypeRepo("snapshots")
)

// Fork JVM when `run`-ing SBT
// http://stackru.com/a/5265162/409976
fork in run := true

И версия SBT:

$cat shapeless_sandbox/project/build.properties
sbt.version=0.13.7

Бег sbt, update, а потом consoleЯ не могу запустить примеры из обзора возможностей.

scala> import poly._
<console>:7: error: not found: value poly
       import poly._
              ^

Что мне не хватает?

1 ответ

Когда вы извлекаете репозиторий Shapeless и запускаете REPL из этого каталога, будет выполнена эта команда (из конфигурации сборки SBT):

initialCommands in console := """import shapeless._"""

Если вы просто зависите от Shapeless в своем собственном проекте, вы не получите тот же эффект. Вы можете добавить эту строку в свою сборку, но гораздо чаще просто импортировать shapeless._ вручную при запуске REPL. Как только вы это сделали, import poly._ (который является относительным импортом для содержимого shapeless.poly пакет) будет работать просто отлично.

Другие вопросы по тегам