Hi Alex, I'm trying to install the Ensime plugin for Vim and I keep getting an error message (trace stack attached). The package
[SUCCESSFUL ] io.get-coursier#sbt-coursier;1.0.0-M11!sbt-coursier.jar (292ms)
loads but Ensime fails to install. Have you seen this bugged reported here before or should I try the Ensime project?
Thanks,
Alex
Attachment:
`java.lang.NoSuchMethodError: coursier.core.Project$.apply(Lcoursier/core/Module;Ljava/lang/String;Lscala/collection/Seq;Lscala/collection/immutable/Map;Lscala/Option;Lscala/collection/Seq;Lscala/collection/Seq;Lscala/collection/Seq;Lscala/Option;Lscala/Option;Lscala/collection/Seq;Lcoursier/core/Info;)Lcoursier/core/Project;
at coursier.FromSbt$.project(FromSbt.scala:116)
at coursier.Tasks$$anonfun$coursierProjectTask$1$$anonfun$apply$4.apply(Tasks.scala:81)
at coursier.Tasks$$anonfun$coursierProjectTask$1$$anonfun$apply$4.apply(Tasks.scala:78)
at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
at sbt.std.Transform$$anon$4.work(System.scala:63)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:228)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
at sbt.Execute.work(Execute.scala:237)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:228)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
[error] (*:coursierProject) java.lang.NoSuchMethodError: coursier.core.Project$.apply(Lcoursier/core/Module;Ljava/lang/String;Lscala/collection/Seq;Lscala/collection/immutable/Map;Lscala/Option;Lscala/collection/Seq;Lscala/collection/Seq;Lscala/collection/Seq;Lscala/Option;Lscala/Option;Lscala/collection/Seq;Lcoursier/core/Info;)Lcoursier/core/Project;
[error] Total time: 0 s, completed Dec 20, 2016 11:25:14 PM
shell returned 1
`
1.0.0-M11 is quite an old version... Do you still run into this issue right now?
There could be conflicts between the coursier version that sbt-ensime pulls, and the version of sbt-coursier. Shading of coursier by sbt-ensime could help prevent those in the future.
I struck this error if I have both ensime-sbt and coursier. Can't have both rows here:
addSbtPlugin("io.get-coursier" % "sbt-coursier" % "1.0.0-M15")
// addSbtPlugin("org.ensime" % "sbt-ensime" % "1.12.7")
@fommil, is it so that latest sbt-ensime pulls coursier transitively so I don't need to have it explicit in my local sbt plugins?
Seems like the exact same stack but here is mine anyways. This is what I get if I have both sbt-coursier and sbt-ensime:
[info] Loading project definition from /Users/viktor/dev/projects/kostbevakningen/project
java.lang.NoSuchMethodError: coursier.core.Project$.apply(Lcoursier/core/Module;Ljava/lang/String;Lscala/collection/Seq;Lscala/collection/immutable/Map;Lscala/Option;Lscala/collection/Seq;Lscala/collection/Seq;Lscala/collection/Seq;Lscala/Option;Lscala/Option;Lscala/Option;Lscala/collection/Seq;Lcoursier/core/Info;)Lcoursier/core/Project;
at coursier.FromSbt$.project(FromSbt.scala:119)
at coursier.Tasks$$anonfun$coursierProjectTask$1$$anonfun$apply$6.apply(Tasks.scala:128)
at coursier.Tasks$$anonfun$coursierProjectTask$1$$anonfun$apply$6.apply(Tasks.scala:125)
at scala.Function1$$anonfun$compose$1.apply(Function1.scala:47)
at sbt.$tilde$greater$$anonfun$$u2219$1.apply(TypeFunctions.scala:40)
at sbt.std.Transform$$anon$4.work(System.scala:63)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226)
at sbt.Execute$$anonfun$submit$1$$anonfun$apply$1.apply(Execute.scala:226)
at sbt.ErrorHandling$.wideConvert(ErrorHandling.scala:17)
at sbt.Execute.work(Execute.scala:235)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
at sbt.Execute$$anonfun$submit$1.apply(Execute.scala:226)
at sbt.ConcurrentRestrictions$$anon$4$$anonfun$1.apply(ConcurrentRestrictions.scala:159)
at sbt.CompletionService$$anon$2.call(CompletionService.scala:28)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
at java.lang.Thread.run(Thread.java:745)
[error] (*:coursierProject) java.lang.NoSuchMethodError: coursier.core.Project$.apply(Lcoursier/core/Module;Ljava/lang/String;Lscala/collection/Seq;Lscala/collection/immutable/Map;Lscala/Option;Lscala/collection/Seq;Lscala/collection/Seq;Lscala/collection/Seq;Lscala/Option;Lscala/Option;Lscala/Option;Lscala/collection/Seq;Lcoursier/core/Info;)Lcoursier/core/Project;
@hedefalk you're using ancient coursier. Use
addSbtPlugin("io.get-coursier" % "sbt-coursier" % "1.0.0-M15-5")
with latest sbt-ensime
@fommil Oh, ok thx! I will try when back at comp. It's the one on the readme still but ok, I see it's from Nov. Guess that's ancient in computer land :)
we plan on "shading" coursier in ensime, but blocked by #454
@fommil Thanks by the way, 1.0.0-M15-5 did the trick.
Changing the version from 1.0.0-M15 to 1.0.0-M15-5 did the trick for me as well when encountering the same error.
Is it possible that the README should be updated to reflect the most recent coursier version? (It currently says 1.0.0-M15).
Most helpful comment
Changing the version from 1.0.0-M15 to 1.0.0-M15-5 did the trick for me as well when encountering the same error.
Is it possible that the README should be updated to reflect the most recent coursier version? (It currently says 1.0.0-M15).