Latest 2.8 nightly breaks the plugin

I can compile from the command line, but with Idea I get the below error. The class Ordered has been moved to scala.math, and that is the class not found. What I don't understand though is why the exception is comming from scala.tools.nsc.Main -- isn't that the actual scala compiler? I've deleted much of my ./Idea../system cache directories to no avail.

Does anybody know how to get maven to used a specific version of a snapshot?

{code}
Information:Compilation completed with 24 errors and 0 warnings
Information:24 errors
Information:0 warnings
Error:Scalac internal error: class java.lang.reflect.InvocationTargetException [sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method), sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39), sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25), java.lang.reflect.Method.invoke(Method.java:597), org.jetbrains.plugins.scala.compiler.rt.ScalacRunner.main(ScalacRunner.java:74)][java.lang.ClassLoader.defineClass1(Native Method), java.lang.ClassLoader.defineClass(ClassLoader.java:621), java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124), java.net.URLClassLoader.defineClass(URLClassLoader.java:260), java.net.URLClassLoader.access$000(URLClassLoader.java:56), java.net.URLClassLoader$1.run(URLClassLoader.java:195), java.security.AccessController.doPrivileged(Native Method), java.net.URLClassLoader.findClass(URLClassLoader.java:188), java.lang.ClassLoader.loadClass(ClassLoader.java:307), sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301), java.lang.ClassLoader.loadClass(ClassLoader.java:252), java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320), scala.tools.nsc.Main$.process(Main.scala:46), scala.tools.nsc.Main$.main(Main.scala:106), scala.tools.nsc.Main.main(Main.scala), sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method), sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39), sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25), java.lang.reflect.Method.invoke(Method.java:597), org.jetbrains.plugins.scala.compiler.rt.ScalacRunner.main(ScalacRunner.java:74)]
Error:sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Error:sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
Error:sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
Error:java.lang.reflect.Method.invoke(Method.java:597)
Error:org.jetbrains.plugins.scala.compiler.rt.ScalacRunner.main(ScalacRunner.java:74)
Error:Caused by java.lang.NoClassDefFoundError: scala/Ordered
Error:java.lang.ClassLoader.defineClass1(Native Method)
Error:java.lang.ClassLoader.defineClass(ClassLoader.java:621)
Error:java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
Error:java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
Error:java.net.URLClassLoader.access$000(URLClassLoader.java:56)
Error:java.net.URLClassLoader$1.run(URLClassLoader.java:195)
Error:java.security.AccessController.doPrivileged(Native Method)
Error:java.net.URLClassLoader.findClass(URLClassLoader.java:188)
Error:java.lang.ClassLoader.loadClass(ClassLoader.java:307)
Error:sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
Error:java.lang.ClassLoader.loadClass(ClassLoader.java:252)
Error:java.lang.ClassLoader.loadClassInternal(ClassLoader.java:320)
Error:scala.tools.nsc.Main$.process(Main.scala:46)
Error:scala.tools.nsc.Main$.main(Main.scala:106)
Error:scala.tools.nsc.Main.main(Main.scala)
Error:Caused by java.lang.ClassNotFoundException: scala.Ordered
Error:java.net.URLClassLoader$1.run(URLClassLoader.java:200)
{code}

3 comments
Comment actions Permalink

Create library Scala SDK with specific scala-library.jar and scala-compiler.jar. Then in scala facet page (Project Settings ->  Modules -> Choose it under your module) write pathes to this jars. Then compiler will be specific.
You can try also to change scala-library.jar and scala-compiler.jar in scala-plugin directory, but then idea can be broken, because scala plugin was compiled with this SNAPSHOT for scala compiler.

Best regards,
Alexander Podkhalyuzin.

0
Comment actions Permalink

What I did was upload the last working version of the compiler and library jars to my nexus server. Do do this you need to change the version number a bit else nexus won't let you upload (snapshots cannot be uploaded to nexus).

2.8.0-20091106.025327-253  --> 2.8.0_20091106.025327-253

Then I just used that version in my pom and all was well.

0
Comment actions Permalink

Sorry, I was inattentive again, you asked about maven.

Best regards,
Alexander Podkhalyuzin.

0

Please sign in to leave a comment.