seratch's weblog in Japanese

About Scala, Java and Ruby programming in Japaense. If you need English information, go to http://blog.seratch.net/

specs2 で unresolved dependency: org.scalaz.stream#scalaz-stream_2.11;0.5a: not found

こんな感じのエラーになってググってここにたどり着いたでしょうか?

[info] Resolving org.scalaz.stream#scalaz-stream_2.11;0.5a ...
[warn]  module not found: org.scalaz.stream#scalaz-stream_2.11;0.5a
[warn] ==== local: tried
[warn]   /Users/k-sera/.ivy2/local/org.scalaz.stream/scalaz-stream_2.11/0.5a/ivys/ivy.xml
[warn] ==== public: tried
[warn]   https://repo1.maven.org/maven2/org/scalaz/stream/scalaz-stream_2.11/0.5a/scalaz-stream_2.11-0.5a.pom
[info] Resolving jline#jline;2.12 ...
[info] downloading https://repo1.maven.org/maven2/org/specs2/specs2_2.11/2.4.4/specs2_2.11-2.4.4.jar ...
[info]  [SUCCESSFUL ] org.specs2#specs2_2.11;2.4.4!specs2_2.11.jar (56915ms)
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  ::          UNRESOLVED DEPENDENCIES         ::
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]  :: org.scalaz.stream#scalaz-stream_2.11;0.5a: not found
[warn]  ::::::::::::::::::::::::::::::::::::::::::::::
[warn]
[warn]  Note: Unresolved dependencies path:
[warn]      org.scalaz.stream:scalaz-stream_2.11:0.5a
[warn]        +- org.specs2:specs2_2.11:2.4.4 (/Users/k-sera/tmp/zzz/build.sbt#L1-2)
[warn]        +- default:zzz_2.11:0.1-SNAPSHOT
sbt.ResolveException: unresolved dependency: org.scalaz.stream#scalaz-stream_2.11;0.5a: not found

ということで specs2 は2.4.2 -> 2.4.3 のマイナーアップデートから突然 Maven Central に存在しない scalaz-stream に依存するようになりました・・というか、これまでの specs2 と同等のものは specs2-core となり、specs2 という artifact はより多くのモジュールを含むものになりました。

specs2 のバージョンを上げて上記のようなエラーになったら "org.specs2" %% "specs2""org.specs2" %% "specs2-core" に変えましょう。この記事を読んでいる人は、それで問題ないはずです。

2015/03/12 追記

specs2 3.0 からは specs2-core であっても scalaz-stream に依存するようになったようです(specs2-common が依存しているので)。ということで全ての specs2 ユーザの方は 3.0 に上げるタイミングから Scalaz の bintry repository を resolvers に追加する必要があります。

resolvers += "Scalaz Bintray Repo" at "http://dl.bintray.com/scalaz/releases"

というか Maven Central にあげてほしいですよね。+1 しましょう、日本からも。