Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何增加Eclipse的堆大小?_Eclipse_Jvm_Jvm Arguments - Fatal编程技术网

如何增加Eclipse的堆大小?

如何增加Eclipse的堆大小?,eclipse,jvm,jvm-arguments,Eclipse,Jvm,Jvm Arguments,我有: 64位Win7 64位JROCKIT 1.6 64位日食 Eclipse.ini: -startup plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810 -showsplash org.eclipse.platform --launcher.d

我有:

  • 64位Win7
  • 64位JROCKIT 1.6
  • 64位日食
  • Eclipse.ini:

    -startup
    plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
    --launcher.library
    plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
    -showsplash
    org.eclipse.platform
    --launcher.defaultAction
    openFile
    --launcher.XXMaxPermSize
    512m
    -vmargs
    -Xms512m
    -Xmx1024m
    -Xmn256m
    -XX:MaxPermSize=512m
    -XX:GCTimeRatio=2
    -XX:ParallelGCThreads=8 
    -XX:+UseParNewGC
    -XX:MaxGCPauseMillis=2000 
    -XX:+DisableExplicitGC
    -Dsun.lang.ClassLoader.allowArraySyntax=true
    -Dweblogic.home=D:\Oracle\Middleware10.3.4\wlserver_10.3
    -Dharvester.home=D:\Oracle\Middleware10.3.4\Oracle_OSB1\harvester
    -Dosb.home=D:\Oracle\Middleware10.3.4\Oracle_OSB1
    -Dosgi.bundlefile.limit=750
    -Dosgi.nl=en_US
    
    我想增加堆大小,但当我将
    -Xmx1024m
    增加到
    -Xmx2048m

    它说:

    未能创建Java虚拟机

    然后,我再次将
    -vm
    参数作为

    -vm
    D:\Java\jrockit-jdk1.6.0_26-R28.1.4-4.0.1\jre\bin\jrockit\jvm.dll
    
    (在
    -vmargs
    之前)它说:

    未能加载JNI共享库


    怎么办?如何增加Eclipse的堆大小?

    与您的断言相反,您有一个32位版本的Eclipse。我可以通过eclipse.ini文件中的org.eclipse.equinox.launcher引用来判断。64位eclipse将此文件命名为“…win32.x86_64…”,而不是“win32.x86…”

    由于Eclipse具有本机组件,因此必须使用32位JVM和32位Eclipse。在尝试强制使用64位JVM时,您会看到“加载JNI共享库失败”问题,因为安装中的Eclipse本机组件与64位JVM不兼容

    就能够增加安装中的堆而言。。。您不太可能将堆增加到2048m。启动时,JVM尝试根据最大堆大小保留连续内存块。32位地址空间总共是4G,但它被固定在不同位置的内存中的各种系统DLL所分割。最大连续内存会因系统而异,但找到连续的2048m块是非常罕见的

    我不是100%肯定这一点,但我听说Jrockit没有连续内存需求。如果是这样的话,您可以像尝试一样切换到Jrockit来解决问题,但您需要安装32位版本的Jrockit

    当然,更好的解决方案是迁移到64位版本的Eclipse。看起来您的Eclipse安装程序来自OSB安装程序。这些只有32位版本,但我相信OSB安装程序支持将OSB插件安装到包含Oracle Enterprise Pack for Eclipse(OEPE)的现有Eclipse安装中。OEPE已经预先构建了64位Eclipse工具包,但是您需要确定OSB插件需要哪个版本的Eclipse和OEPE(它将是一个特定的版本)

    祝你好运


    更新:刚刚想起了其他事情。。。有时,如果使用javaw.exe而不是jvm.dll,则更容易使用更高的Xmx设置运行,因为这两个入口点之间的内存管理不同。要尝试此操作,请找到32位JVM的javaw.exe的路径,并通过-vm开关指定它,就像您试图在问题中指定另一个JVM.dll一样。

    与您的断言相反,您有一个32位版本的Eclipse。我可以通过eclipse.ini文件中的org.eclipse.equinox.launcher引用来判断。64位eclipse将此文件命名为“…win32.x86_64…”,而不是“win32.x86…”

    由于Eclipse具有本机组件,因此必须使用32位JVM和32位Eclipse。在尝试强制使用64位JVM时,您会看到“加载JNI共享库失败”问题,因为安装中的Eclipse本机组件与64位JVM不兼容

    就能够增加安装中的堆而言。。。您不太可能将堆增加到2048m。启动时,JVM尝试根据最大堆大小保留连续内存块。32位地址空间总共是4G,但它被固定在不同位置的内存中的各种系统DLL所分割。最大连续内存会因系统而异,但找到连续的2048m块是非常罕见的

    我不是100%肯定这一点,但我听说Jrockit没有连续内存需求。如果是这样的话,您可以像尝试一样切换到Jrockit来解决问题,但您需要安装32位版本的Jrockit

    当然,更好的解决方案是迁移到64位版本的Eclipse。看起来您的Eclipse安装程序来自OSB安装程序。这些只有32位版本,但我相信OSB安装程序支持将OSB插件安装到包含Oracle Enterprise Pack for Eclipse(OEPE)的现有Eclipse安装中。OEPE已经预先构建了64位Eclipse工具包,但是您需要确定OSB插件需要哪个版本的Eclipse和OEPE(它将是一个特定的版本)

    祝你好运

    更新:刚刚想起了其他事情。。。有时,如果使用javaw.exe而不是jvm.dll,则更容易使用更高的Xmx设置运行,因为这两个入口点之间的内存管理不同。要尝试此操作,请找到32位JVM的javaw.exe的路径,并通过-vm开关指定它,就像您试图在问题中指定另一个JVM.dll一样。

    谢谢,我有“_64”,但不知怎的,它不在我的ini中。我再次解压&它现在正在使用3g的heap。另外,我必须指定
    jvm.dll
    ,因为引用
    javaw.exe
    不起作用,它一直在请求JNI库。谢谢,我有“_64”,但不知怎么的,它不在我的ini中。我再次解压&它现在正在使用3g的heap。另外,我必须指定
    jvm.dll
    ,因为引用
    javaw.exe
    不起作用,它一直要求使用JNI库。