lihaoyi / hands-on-scala-js

Better documentation for Scala.js
142 stars 52 forks source link

Build failure NoSuchMethodError: scalatags.{...}/PixelStyleValue #42

Closed adamvoss closed 7 years ago

adamvoss commented 7 years ago

Using a fresh clone, and executing sbt book/run as per the README fails with the following error:

[info] Running book.Main [error] (run-main-0) java.lang.NoSuchMethodError: scalatags.Text$all$.intPixelStyle()Lscalatags/generic/PixelStyleValue; java.lang.NoSuchMethodError: scalatags.Text$all$.intPixelStyle()Lscalatags/generic/PixelStyleValue; at scalatex.site.Section$class.$init$(Section.scala:64) at book.BookData$$anon$2.(BookData.scala:62) at book.BookData$.(BookData.scala:62) at book.BookData$.(BookData.scala:24) at scalatex.Index$.apply(Index.scala:4) at book.Main$$anon$1.content(Main.scala:33) at scalatex.site.Site$class.generateHtml(Site.scala:97) at book.Main$$anon$1.generateHtml(Main.scala:32) at scalatex.site.Site$class.renderTo(Site.scala:107) at book.Main$$anon$1.renderTo(Main.scala:32) at book.Main$.main(Main.scala:70) at book.Main.main(Main.scala) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498)

I don't know how to go about debugging this.

sjrd commented 7 years ago

Looks like a binary version mismatch. Most likely two paths on the dependency graph try to depend on ScalaTags, with two different versions. One path wins, but the other then fails to link with the above error.

adamvoss commented 7 years ago

Thanks @sjrd, I spent a lot of time trying to track that down without finding much hope. Ultimately, disabling coursier in my sbt causes it to work.

I have opened alexarchambault/coursier#395 regarding this.