Rubymine failing to start in Ubuntu 13.04 after Java update
Hi,
I just updated Java (x64) in my Ubuntu 13.04 machine and now Rubymine is failing to start due to a Java error. The error text is as follows:
kev@ubuntu:~/rubymine/bin$ ./rubymine.sh
Java HotSpot(TM) 64-Bit Server VM (build 25.0-b31, mixed mode)
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=250m; support was removed in 8.0
Failed to clear URL cache
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:491)
at com.intellij.ide.plugins.PluginManager$2.run(PluginManager.java:196)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.NoSuchMethodError: sun.reflect.Reflection.getCallerClass(I)Ljava/lang/Class;
at com.intellij.util.ImageLoader.loadFromResource(ImageLoader.java:89)
at com.intellij.ui.AppUIUtil.a(AppUIUtil.java:72)
at com.intellij.ui.AppUIUtil.updateWindowIcon(AppUIUtil.java:49)
at com.intellij.idea.MainImpl.start(MainImpl.java:45)
... 6 more
ERROR: Error while accessing com.intellij.idea.MainImpl.start with arguments: []
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:491)
at com.intellij.ide.plugins.PluginManager$2.run(PluginManager.java:196)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.NoSuchMethodError: sun.reflect.Reflection.getCallerClass(I)Ljava/lang/Class;
at com.intellij.util.ImageLoader.loadFromResource(ImageLoader.java:89)
at com.intellij.ui.AppUIUtil.a(AppUIUtil.java:72)
at com.intellij.ui.AppUIUtil.updateWindowIcon(AppUIUtil.java:49)
at com.intellij.idea.MainImpl.start(MainImpl.java:45)
... 6 more
ERROR: Error while accessing com.intellij.idea.MainImpl.start with arguments: []
java.lang.AssertionError: Error while accessing com.intellij.idea.MainImpl.start with arguments: []
at com.intellij.openapi.diagnostic.DefaultLogger.error(DefaultLogger.java:55)
at com.intellij.openapi.diagnostic.Logger.error(Logger.java:65)
at com.intellij.ide.plugins.PluginManager$2.run(PluginManager.java:200)
at java.lang.Thread.run(Thread.java:724)
Exception: java.lang.AssertionError thrown from the UncaughtExceptionHandler in thread "Idea Main Thread 5.4.1#RM-129.303, eap:false"
请先登录再写评论。
Hmm, I haven't seen such problem on my Ubuntu 13.04 :(
What exact versin of JDK are you using? Is it OpenJDK or Oracle JDK?
What plugins are you using?
Regards, Oleg.
P.S. btw it would be very useful if you'd provide complete log (you cann attach it to you message ;))
It's Oracle JDK 8 provided here: https://launchpad.net/~webupd8team/+archive/java (pretty well thought of)
Which log do you mean please? Remember it is not launching, so I can't access the Editor log.
Ok, I will try jdk8 locally and see if the problem reproducible for me.
The log == all messages RM prints in console when you run it from command line.
In the mean time I'd suggest to use jdk7 (we do support jdk8 yet)
Regards, Oleg.
Actually Oleg I have fixed the Problem by reverting to Java 7 SDK instead of Java 8, so no need. It seems it is due to a discontinued method in Java 8 - you might want to check on that before Java 8 launches ;)
Sure, we will check :)
Regards, Oleg.
I have the exact same setup as you, except for the fact that I'm trying to launch IDEA instead of Rubymine. I'm getting the same exact results, so I'd say it's safe to assume 64-bit Java 8 breaks IDEA, Rubymine, and probably others on Ubuntu.
Thanks for posting Colin - makes it more likely to be looked into hopefully. It might be something that they just haven't thought of as they aren't tesing in Java 8 yet, or it could be something wrong in Java 8 itself (wouldn't surprise me!) For now I have gone back to Java 7 until they have it fixed. To be fair, I haven''t yet noticed a speed difference. I was just getting fed up with the multitude of patches to J7 to fix security problems.
I'm installing jdk8 for several hours now (downloading is very slooooooow :(
As soon we it will be installed I will try it.
Oleg.
It looks like the cause of the problem is that sun.reflect.Reflection.getCallerClass(I)Ljava/lang/Class; has been removed in jdk8b87.
Good news - the problem has been fixed in our master, so in next major version it will be fixed (but this doesn't mean that jdk8 will be recommended to be used as jdk for Idea/RubyMine ;)
Regards, Oleg.