Skip navigation.

Notes to self

Whatever I feel like writing

Posts tagged with "eclipse"

64bit HotSpot hates Eclipse

,

If you find that Eclipse is incredibly crashy on the 64bit Linux HotSpot JVM, then try adding these two lines to your eclipse.ini file:

-XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith
-XX:CompileCommand=exclude,org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding,<init>

I concluded this by scoping out the hs_err_pid* files that HotSpot produces when it crashes, and in these files you can spy something like the following:

Current CompileTask:
C2:484      org.eclipse.core.internal.dtree.DataTreeNode.forwardDeltaWith([Lorg/eclipse/core/internal/dtree/AbstractDataTreeNode;[Lorg/eclipse/core/internal/dtree/AbstractDataTreeNode;Lorg/eclipse/core/internal/dtree/IComparator;)[Lorg/eclipse/core/internal/dtree/AbstractDataTreeNode; (469 bytes)

It basically says that the JIT crashes trying to compile that method, and the solution is to prevent it from being JITted.

Eclipse crashes on 64-bit Linux

,

It seems that lots of people are experiencing their Eclipse IDE crashing more or less randomly on thei 64-bit Linux systems.

However, it seems that adding this:

-XX:CompileCommand=exclude,org/eclipse/core/internal/dtree/DataTreeNode,forwardDeltaWith


To your eclipse.ini fixes the issue, for some reason.

EDIT:

After installing some plugins, my Eclipse started crashing again. That's the bad part. The good part is that you can see in the generated hs_err_* file exactly which method the JIT compiler was groking when HotSpot crashed. This lead me to add another line to my eclipse.ini:

-XX:CompileCommand=exclude,org/eclipse/jdt/internal/compiler/lookup/ParameterizedMethodBinding,<init>


And that seems to have solved the crashes... again.