`
xiexd
  • 浏览: 245255 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

eclipse启动参数配置简介

    博客分类:
  • JAVA
阅读更多

eclipse.ini内存设置(转)

  -vmargs -Xms128M -Xmx512M -XX:PermSize=64M -XX:MaxPermSize=128M

  这里有几个问题:

  1. 各个参数的含义什么?

  2. 为什么有的机器我将-Xmx和-XX:MaxPermSize都设置为512M之后Eclipse可以启动,而有些机器无法启动?

  3. 为何将上面的参数写入到eclipse.ini文件Eclipse没有执行对应的设置?

  下面我们一一进行回答

  1. 各个参数的含义什么?

  参数中-vmargs的意思是设置JVM参数,所以后面的其实都是JVM的参数了,我们首先了解一下JVM内存管理的机制,然后再解释每个参数代表的含义。

  堆(Heap)和非堆(Non-heap)内存

  按照官方的说法:“Java 虚拟机具有一个堆,堆是运行时数据区域,所有类实例和数组的内存均从此处分配。堆是在 Java 虚拟机启动时创建的。”“在JVM中堆之外的内存称为非堆内存(Non-heap memory)”。可以看出JVM主要管理两种类型的内存:堆和非堆。简单来说堆就是Java代码可及的内存,是留给开发人员使用的;非堆就是JVM留给 自己用的,所以方法区、JVM内部处理或优化所需的内存(如JIT编译后的代码缓存)、每个类结构(如运行时常数池、字段和方法数据)以及方法和构造方法 的代码都在非堆内存中。

  堆内存分配

  JVM初始分配的内存由-Xms指定,默认是物理内存的1/64;JVM最大分配的内存由-Xmx指定,默认是物理内存的1/4。默认空余堆内存小于 40%时,JVM就会增大堆直到-Xmx的最大限制;空余堆内存大于70%时,JVM会减少堆直到-Xms的最小限制。因此服务器一般设置 -Xms、-Xmx相等以避免在每次GC 后调整堆的大小。

  非堆内存分配

  JVM使用-XX:PermSize设置非堆内存初始值,默认是物理内存的1/64;由XX:MaxPermSize设置最大非堆内存的大小,默认是物理内存的1/4。

  JVM内存限制(最大值)

  首先JVM内存限制于实际的最大物理内存(废话!呵呵),假设物理内存无限大的话,JVM内存的最大值跟操作系统有很大的关系。简单的说就 32位处理器虽然可控内存空间有4GB,但是具体的操作系统会给一个限制,这个限制一般是2GB-3GB(一般来说Windows系统下为1.5G- 2G,Linux系统下为2G-3G),而64bit以上的处理器就不会有限制了。

  2. 为什么有的机器我将-Xmx和-XX:MaxPermSize都设置为512M之后Eclipse可以启动,而有些机器无法启动?

  通过上面对JVM内存管理的介绍我们已经了解到JVM内存包含两种:堆内存和非堆内存,另外JVM最大内存首先取决于实际的物理内存和操作系统。所以说设置VM参数导致程序无法启动主要有以下几种原因:

  1) 参数中-Xms的值大于-Xmx,或者-XX:PermSize的值大于-XX:MaxPermSize;

  2) -Xmx的值和-XX:MaxPermSize的总和超过了JVM内存的最大限制,比如当前操作系统最大内存限制,或者实际的物理内存等等。说到实际物理 内存这里需要说明一点的是,如果你的内存是1024MB,但实际系统中用到的并不可能是1024MB,因为有一部分被硬件占用了。

  3. 为何将上面的参数写入到eclipse.ini文件Eclipse没有执行对应的设置?

  那为什么同样的参数在快捷方式或者命令行中有效而在eclipse.ini文件中是无效的呢?这是因为我们没有遵守eclipse.ini文件的设置规则:

  参数形如“项 值”这种形式,中间有空格的需要换行书写,如果值中有空格的需要用双引号包括起来。比如我们使用-vm C:Javajre1.6.0binjavaw.exe参数设置虚拟机,在eclipse.ini文件中要写成这样:

-vm
C:Javajre1.6.0binjavaw.exe

  按照上面所说的,最后参数在eclipse.ini中可以写成这个样子:

-vmargs
-Xms128M
-Xmx512M
-XX:PermSize=64M
-XX:MaxPermSize=128M

  实际运行的结果可以通过Eclipse中“Help”-“About Eclipse SDK”窗口里面的“Configuration Details”按钮进行查看。

  另外需要说明的是,Eclipse压缩包中自带的eclipse.ini文件内容是这样的:

-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
-vmargs
-Xms40m
-Xmx256m

  其中–launcher.XXMaxPermSize(注意最前面是两个连接线)跟-XX:MaxPermSize参数的含义基本是一样的,我觉得唯 一的区别就是前者是eclipse.exe启动的时候设置的参数,而后者是eclipse所使用的JVM中的参数。其实二者设置一个就可以了,所以这里可 以把–launcher.XXMaxPermSize和下一行使用#注释掉。

  3. 其他的启动参数。 如果你有一个双核的CPU,也许可以尝试这个参数:

-XX:+UseParallelGC

  让GC可以更快的执行。(只是JDK 5里对GC新增加的参数)

 

 

 

 

其实,Eclipse是一个可以进行非常灵活配置的系统,除了以缺省的方式启动以外,还可以指定各种参数来定制启动方式。在参考了一些资料之后,我总结了一些比较常用的启动时Command Arguments,如果有不正确的地方希望大家予以指出。

-arch [processor architecture]
描述:指定所使用的处理器的类别
举例:eclipse -arch x86或eclipse -arch sparc

-application [id]
描述:指定要运行的应用,id为扩展org.eclipse.core.applications扩展点的插件id加扩展id
举例:例如有个插件id为edu.sdu.app,扩展id为myapp,则eclipse -application edu.sdu.app.myapp,就会执行你的扩展应用

-clean
描述:清空插件缓存内容
举例:eclipse -clean,有时插件显示不出来是因为Eclipse将插件进行了缓存以加速启动过程,若指定此参数则会清空缓存,从头加载

 

 

 

 

 

-configuration [cofigfile location]
描述:指定配置文件的位置,在启动时使用此目录下的配置文件config.ini来启动
举例:eclipse -configuration d:/eclipse/configuration

-data [workspace location]
描述:指定启动时的Workspace位置
举例:例如Workspace位置设在D:/myworkspace,则eclipse -data D:/myworkspace

-debug [option file]
描述:以Debug状态启动Eclipse,所有的Debug开关在.options文件中指定
举例:eclipse -debug d:/eclipse/.options

-dev [classpath entry]
描述:以开发状态启动Eclipse,这会添加所有指定的路径作为每个插件的Classpath

   举例:例如eclipse -dev bin,会将产生在bin目录下的所有类加载到类路径中,这在开发插件时非常有用

   -nosplash
描述:指定启动时不显示闪屏
举例:eclipse -nosplash

-vm [jre path]
描述:指定启动时所使用的Java虚拟机
举例:例如要使用自己的Java虚拟机,则eclipse -vm D:/j2sdk1.4.2_04/jre/bin/java.exe,这样还有一个好处,就是可以开启一个Console,能够显示控制台信息,当然若 使用eclipse -vm D:/j2sdk1.4.2_04/jre/bin/javaw.exe则不会再显示控制台

-vmargs [Java VM arguments]
描述:指定启动时要使用的Java虚拟机参数
举例:例如要指定使用的内存容量,则eclipse -vmargs "-Xms256m -Xmx1024m"
注:此参数一定要放在所有参数变量的最后面

分享到:
评论

相关推荐

    Eclipse启动参数设置

    Eclipse启动参数Eclipse启动参数设置

    eclipse启动参数设置

    eclipse启动参数设置,介绍了eclipse的常用参数设置,刚接触eclipse的可以看看,高手可以无视。

    Eclipse 快捷键大全和启动参数大全.txt

    Eclipse 快捷键大全和启动参数大全.txt

    Eclipse和svn常用设置及配置大全

    Eclipse和svn常用设置及配置大全主要包括:1.Eclipse 启动参数设置 2.Eclipse 常用快捷键大全 3.Eclipse 颜色设置 4.SVN入门及配置使用 5.Windows下Subversion配置管理员指南 6.SVN服务器配置详解 另外里面还有一个...

    NC65共享开发环境之 eclipse配置 - 生效.docx

    NC65共享开发环境之 eclipse配置 - 生效.docx

    eclipse中resin的启动

    如何配置eclipse中resin的启动,介绍其参数配置问题

    Eclipse 启动运行速度调优

    <br>===================================================================================================================== 建议启动参数: <br>c:\eclipse\eclipse.exe -vmargs -Xverify:none -Xms...

    Eclipse IDE开发平台配置及参数深度优化说明

    Eclipse IDE开发平台配置及参数深度优化说明,让Eclipse启动更快,开发编码更流畅

    java eclipse 启动参数

    其实,Eclipse是一个可以进行非常灵活配置的系统,除了以缺省的方式启动以外,还可以指定各种参数来定制启动方式。

    eclipse.ini

    Eclipse的启动由$ECLIPSE_HOME/eclipse.ini控制,如果$ECLIPSE_HOME 没有...2:所有在-vmargs之后的参数将会被传输给JVM,所有如果所有对Eclipse 设置的参数必须写在-vmargs之前(就如同你在命令行上使用这些参数一样)

    用来运行Eclipse的工具

    如果不使用默认的工作空间,必须命令行启动eclipse,在命令行中配置参数,真的挺麻烦,于是一生气就写了这么个玩意儿,希望大家喜欢。 可以在运行eclipse前配置工作空间、java虚拟机、使用内存、其他参数 --------...

    sonar eclipse插件sonarlint

    sonar eclipse插件sonarlint,原先的插件已经被启用,这是最新的,如果连接本地sonar服务器,需要在eclipse.ini中配置启动参数,参数为org.sonarlint.eclipse.core/server_url 值为sonar服务器地址,如果不配置默认...

    Eclipse开发平台运行工具1.0

    如果不使用默认的工作空间,必须命令行启动eclipse,在命令行中配置参数,真的挺麻烦,于是一生气就写了这么个玩意儿,希望大家喜欢。 可以在运行eclipse前配置工作空间、java虚拟机、使用内存、其他参数

    仿eclipse的Java引导小程序

    本Java引导程序,参照了Eclipse3.3的引导方法,可通过xml配置jre路径、类路径、启动类及JVM的启动参数,JAVA应用不再是通过控制台引导,而是通过一个无界面的桌面应用程序引导。jre路径支持从环境变量和配置文件加载...

    Optimizer for Eclipse

    在2015年EclipseCon上,Zero Turnaround(消除Java...从Eclipse Marketplace下载安装后,Eclipse优化器会通过一系列的向导步骤询问用户是否调整JVM启动参数中的内存设置和其他性能标志,从而大大提升应用的启动速度。

    Eclipse权威开发指南2.pdf

    6.1.2 Eclipse的平台配置..... 159 6.1.3 features目录..... 160 6.1.4 plugins目录..... 161 6.2 理解运行时配置...... 161 6.2.1 用户界面中的功能部件详细信息..... 162 6.2.2 配置详细信息..... 163 6.3 ...

    eclipse 开发c/c++

    另外,可以定义希望要传递给应用程序的参数,或者可以设置环境变量。 其它选项用于设置调试选项,例如使用哪个调试器(GNU GDB 或 Cygwin GDB)。 图 8 显示了正在为项目创建运行概要文件(run profile)。 图 8. ...

    eclipse反编译

    (2)使用 –clean参数来启动eclipse (二)在使用JadClipse插件反编译class文件时出现如下类似错误: 请确保你的Jad路径在eclipse中正确制定。 启动eclipse,打开:Window->Preferences->Java->JadClipse. 1、...

    Eclipse权威开发指南3.pdf

    6.1.2 Eclipse的平台配置..... 159 6.1.3 features目录..... 160 6.1.4 plugins目录..... 161 6.2 理解运行时配置...... 161 6.2.1 用户界面中的功能部件详细信息..... 162 6.2.2 配置详细信息........

    Eclipse权威开发指南1.pdf

    6.1.2 Eclipse的平台配置..... 159 6.1.3 features目录..... 160 6.1.4 plugins目录..... 161 6.2 理解运行时配置...... 161 6.2.1 用户界面中的功能部件详细信息..... 162 6.2.2 配置详细信息........

Global site tag (gtag.js) - Google Analytics