Как настроить проект IntelliJ + Scala + specs + sbt?
Я пытаюсь настроить пустой проект sbt с specs2 для Scala (2.10) с поддержкой IntelliJ (12.1), и я получаю эту ошибку, когда я делаю sbt compile
в пустой директории проекта:
% sbt compile
Getting net.java.dev.jna jna 3.2.3 ...
:: retrieving :: org.scala-sbt#boot-jna
confs: [default]
1 artifacts copied, 0 already retrieved (838kB/32ms)
Getting org.scala-sbt sbt_2.9.1 0.11.3 ...
:: retrieving :: org.scala-sbt#boot-app
confs: [default]
37 artifacts copied, 0 already retrieved (7245kB/734ms)
Getting Scala 2.9.1 (for sbt)...
:: retrieving :: org.scala-sbt#boot-scala
confs: [default]
4 artifacts copied, 0 already retrieved (19939kB/402ms)
[info] Loading project definition from /Users/pathikrit/Projects/scalgos/project
[info] Set current project to scalgos (in build file:/Users/pathikrit/Projects/scalgos/)
Getting Scala 2.10.1 ...
:: retrieving :: org.scala-sbt#boot-scala
confs: [default]
5 artifacts copied, 0 already retrieved (24386kB/107ms)
[info] Updating {file:/Users/pathikrit/Projects/scalgos/}default-7d65e1...
[info] Resolving org.scala-lang#scala-library;2.10.1 ...
[info] Resolving org.specs2#specs2_2.10.1;1.14 ...
[warn] module not found: org.specs2#specs2_2.10.1;1.14
[warn] ==== local: tried
[warn] /Users/pathikrit/.ivy2/local/org.specs2/specs2_2.10.1/1.14/ivys/ivy.xml
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/org/specs2/specs2_2.10.1/1.14/specs2_2.10.1-1.14.pom
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: org.specs2#specs2_2.10.1;1.14: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[error] {file:/Users/pathikrit/Projects/scalgos/}default-7d65e1/*:update: sbt.ResolveException: unresolved dependency: org.specs2#specs2_2.10.1;1.14: not found
[error] Total time: 4 s, completed Mar 25, 2013 5:11:17 PM
мой build.sbt
файл выглядит так:
name := "scalgos"
version := "0.0.1"
scalaVersion := "2.10.1"
libraryDependencies += "org.specs2" %% "specs2" % "1.14" % "test"
Я установил SBT, выполнив brew install sbt
:
% brew info sbt
sbt: stable 0.12.2, devel 0.13.0-M1
http://www.scala-sbt.org
/usr/local/Cellar/sbt/0.11.3-2 (3 files, 1.1M) *
https://github.com/mxcl/homebrew/commits/master/Library/Formula/sbt.rb
==> Caveats
You can use $SBT_OPTS to pass additional JVM options to SBT.
For convenience, this can specified in `~/.sbtconfig`.
For example:
SBT_OPTS="-XX:+CMSClassUnloadingEnabled -XX:MaxPermSize=256M"
Brew говорит, что у меня есть 0.12, но когда я sbt --version
Я получил:
% sbt --version
sbt launcher version 0.11.3-2
Я попытался по крайней мере сгенерировать файлы IntelliJ, поместив это в мой $PROJECT_DIR/projects/plugins.sbt:
resolvers += "sbt-idea-repo" at "http://mpeltonen.github.com/maven/"
addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.2.0")
Но когда я сделал sbt gen-idea
Я получил эту ошибку:
% sbt gen-idea
[info] Loading project definition from /Users/pathikrit/Projects/scalgos/project
[info] Set current project to scalgos (in build file:/Users/pathikrit/Projects/scalgos/)
[info] Trying to create an Idea module scalgos
[info] Updating {file:/Users/pathikrit/Projects/scalgos/}default-7d65e1...
[info] Resolving org.scala-lang#scala-library;2.10.1 ...
[info] Resolving org.specs2#specs2_2.10.1;1.14 ...
[warn] module not found: org.specs2#specs2_2.10.1;1.14
[warn] ==== local: tried
[warn] /Users/pathikrit/.ivy2/local/org.specs2/specs2_2.10.1/1.14/ivys/ivy.xml
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/org/specs2/specs2_2.10.1/1.14/specs2_2.10.1-1.14.pom
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: org.specs2#specs2_2.10.1;1.14: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[error] {file:/Users/pathikrit/Projects/scalgos/}default-7d65e1/*:update: sbt.ResolveException: unresolved dependency: org.specs2#specs2_2.10.1;1.14: not found
[info] Updating {file:/Users/pathikrit/Projects/scalgos/}default-7d65e1...
[info] Resolving org.scala-lang#scala-library;2.10.1 ...
[info] Resolving org.specs2#specs2_2.10.1;1.14 ...
[warn] module not found: org.specs2#specs2_2.10.1;1.14
[warn] ==== local: tried
[warn] /Users/pathikrit/.ivy2/local/org.specs2/specs2_2.10.1/1.14/ivys/ivy.xml
[warn] ==== public: tried
[warn] http://repo1.maven.org/maven2/org/specs2/specs2_2.10.1/1.14/specs2_2.10.1-1.14.pom
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: UNRESOLVED DEPENDENCIES ::
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[warn] :: org.specs2#specs2_2.10.1;1.14: not found
[warn] ::::::::::::::::::::::::::::::::::::::::::::::
[error] {file:/Users/pathikrit/Projects/scalgos/}default-7d65e1/*:update: sbt.ResolveException: unresolved dependency: org.specs2#specs2_2.10.1;1.14: not found
[error] Failed to obtain dependency classpath
[error] java.lang.IllegalArgumentException
[error] Use 'last' for the full log.
Может кто-нибудь выложить образец build.sbt
что будет генерировать файлы IntelliJ 12.1 для Scala 2.10.1 и sbt?
Я зарегистрировался в моем проекте здесь: https://github.com/pathikrit/scalgos
Посоветуйте пожалуйста что я делаю не так???
2 ответа
Вы можете использовать этот проект, который я построил, который обеспечивает то, что вы ищете из коробки
Я планирую обновить конфигурацию sbt и последние и лучшие библиотеки (sbt-idea 1.3.0 и scala 2.10.1) сегодня вечером.
наслаждаться!
Вам нужно обновить версию sbt до 0.12.X, создать файл "project/build.properties" и поставить "sbt.version=0.12.1"
я раздвоил ваш репозиторий и отредактировал версию sbt, похоже, на моей машине все работает нормально