2012-03-09 66 views
0

我已经在AIX实例上安装了Eclipse(eclipse-SDK-3.6.2-aix-gtk-ppc64.zip)。最初它似乎开始,但按钮将停止工作。我终于跟踪下来到Eclipse抛出以下异常:在AIX上启动Eclipse会抛出java/lang/OutOfMemoryError

JVMDUMP006I Processing dump event "systhrow", detail "java/lang/OutOfMemoryError" - please wait. 
JVMDUMP032I JVM requested Snap dump using '/home/atginst/eclipse/Snap.20120309.111040.8650798.0001.trc' in response to an event 
JVMDUMP010I Snap dump written to /home/atginst/eclipse/Snap.20120309.111040.8650798.0001.trc 
JVMDUMP032I JVM requested Heap dump using '/home/atginst/eclipse/heapdump.20120309.111040.8650798.0002.phd' in response to an event 
JVMDUMP010I Heap dump written to /home/atginst/eclipse/heapdump.20120309.111040.8650798.0002.phd 
JVMDUMP032I JVM requested Java dump using '/home/atginst/eclipse/javacore.20120309.111040.8650798.0003.txt' in response to an event 
JVMDUMP010I Java dump written to /home/atginst/eclipse/javacore.20120309.111040.8650798.0003.txt 
JVMDUMP013I Processed dump event "systhrow", detail "java/lang/OutOfMemoryError". 
Exception in thread "[Timer] - Main Queue Handler" java.lang.OutOfMemoryError: native memory exhausted 
at java.lang.ClassLoader.defineClassImpl(Native Method) 
    at java.lang.ClassLoader.defineClass(ClassLoader.java:274) 
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.defineClass(DefaultClassLoader.java:188) 
    at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.defineClass(ClasspathManager.java:580) 
    at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findClassImpl(ClasspathManager.java:550) 
    at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClassImpl(ClasspathManager.java:481) 
    at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass_LockClassLoader(ClasspathManager.java:469) 
    at org.eclipse.osgi.baseadaptor.loader.ClasspathManager.findLocalClass(ClasspathManager.java:449) 
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.findLocalClass(DefaultClassLoader.java:216) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findLocalClass(BundleLoader.java:393) 
    at org.eclipse.osgi.internal.loader.SingleSourcePackage.loadClass(SingleSourcePackage.java:33) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClassInternal(BundleLoader.java:457) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:422) 
    at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:410) 
    at org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader.loadClass(DefaultClassLoader.java:107) 
    at java.lang.ClassLoader.loadClass(ClassLoader.java:618) 
    at org.eclipse.equinox.internal.util.ref.Log.getService(Log.java:424) 
    at org.eclipse.equinox.internal.util.ref.Log.logMessage(Log.java:438) 
    at org.eclipse.equinox.internal.util.ref.Log.error(Log.java:155) 
    at org.eclipse.equinox.internal.util.impl.tpt.threadpool.ThreadPoolManagerImpl.getObject(ThreadPoolManagerImpl.java:98) 
    at org.eclipse.equinox.internal.util.impl.tpt.threadpool.ThreadPoolManagerImpl.execute(ThreadPoolManagerImpl.java:201) 
    at org.eclipse.equinox.internal.util.impl.tpt.threadpool.ThreadPoolFactoryImpl.execute0(ThreadPoolFactoryImpl.java:112) 
    at org.eclipse.equinox.internal.util.impl.tpt.timer.TimerImpl.run(TimerImpl.java:110) 
    at java.lang.Thread.run(Thread.java:736) 

我已经改变了-Xms和-Xmx值不同的设置无济于事。分析相应的线程转储表明VM中有99%的内存可用。

我在设置这个时候缺少一些明显的东西吗?

回答

0

在编辑eclipse.ini文件,唯一可靠的办法,我现在就可以开始它是通过将-vm参数在启动如下各种尝试后:

./eclipse -vm /Websphere/java/bin/java -vmargs -Xmx1024M &

0

我会尝试设置-Xss-Xmso选项来设置内部/ OS线程堆栈大小。它是一个非标准选项IBM's JVM

相关问题