`

升级到jdk6 update21 eclipse 遇到PermGen的问题

阅读更多

 

由于xp操作系统用了很久,ghost恢复了一下,裸机上索性全部安装最新的,将jdk升级到最新版本的jdk6u21,随机启动eclipse,发现打开文件特别卡,然后eclipse直接关闭,当写代码自动提示时,卡,eclipse很不礼貌的关闭,没任何提示,这个版本的eclipse用了很久,所以怀疑新装jdk的问题,反复测试发现了一个弹出框,有PermGen字眼,然后google索索,找到一片文章解决了我的问题,特别翻译出来,以备后来人!

 

 

If you recently upgraded to JDK 6 update 21 on Windows

and are noticing lots of Eclipse problems, 

如果最近将jdk升级到jdk6u21(windows用户),那么eclipse会出现很多问题

 

I probably know why (and can show you how to fix it).

 

First, some background. The HotSpot VM (Sun’s implementation)

has a concept known as the Permanent Generation,

or PermGen for short. Its main purpose is to confound users and it is rumored 

to be going away in future releases of HotSpot.

 

首先,了解一些背景知识,HotSpot VM(sun的实现)有一个永生代的概念(缩写PermGen),

它的主要目的是to confound users (不知如何翻译),听说将在以后的HotSpot版本中移除

 

By default, the VM allocates 64 MB for the PermGen space, which is often enough. 

However, Eclipse installations with a lot of plugins tend to need a lot more.

默认,虚拟机给永生代分配64M的内存空间,通常是足够的,

然而,eclipse安装了太多的插件,需要更多的内存

 

Because Eclipse is meant to work on multiple JVMs,

the stock eclipse.ini doesn’t directly set the PermGen size,

it has a line that looks like this:

由于Eclipse有意工作在多虚拟机下,配置文件eclipse.ini不能直接设置PermGen的大小,文件中有如下一行:

 

 

–launcher.XXMaxPermSize

256m

 

 

That will tell the Eclipse launcher to set the perm size, 

if it is running on the HotSpot VM. Unfortunately,

it appears this quit working with update 21

– a quick check with VisualVM showed that this flag wasn’t working 

这个配置告诉eclipse启动器,如果在 HotSpot VM上运行的话, 设置PermGen 大小,遗憾的是,

它似乎在jdku21版本中不工作了!

 

and no matter what you set it to, your VM would have only 64MB of PermGen space.

虽然你设置了,但是虚拟机仍然只有64M的PermGen空间

 

It appears that the cause of this is that with update 21,

the vendor flag was changed to Oracle, which broke Eclipse’s VM detection code.

Thus, the flag is never being passed through to the VM.

It appears as though this only happens on Windows and only 

when running the Sun (sorry, I’ll never call it Oracle) JVM.

 

Fortunately, it is easy to fix. Simply add this flag to the

-vmargs section of your eclipse.ini (it should be at or near the bottom):

幸运的是,这个问题非常容易的就解决了,在配置文件eclipse.ini的-vmargs部分简单的添加如下标志

(添加在最下面或者最下的附近位置)

-XX:MaxPermSize=256M

 

That will directly set the PermGen size 

and should fix any PermGen errors you were running into.

 

此标记将直接设置PermGen的大小,解决运行时PermGen的错误

 

Who knows what else changing the vendor flag broke?

2
1
分享到:
评论
1 楼 cuixiping 2010-07-27  
我也被这个问题蹂躏过

相关推荐

    Caused by: java.lang.OutOfMemoryError: PermGen space解决方案

    在Java应用程序运行过程中,"java.lang.OutOfMemoryError: PermGen space"错误是常见的一个问题,尤其是在使用Tomcat这样的Java应用服务器时。这个错误表明应用程序在 PermGen 区域(Permanent Generation)耗尽了...

    Tomcat出现_PermGen_space解决方案

    同时,考虑到 PermGen Space 设计上的局限性,升级至 Java 8 或更高版本,利用 Metaspace 取代 PermGen Space,可以从根本上解决这一问题。此外,对于 Heap Space 溢出的问题,同样需要适当调整 JVM 参数来避免内存...

    java.lang.OutOfMemoryError: PermGen space解决方案

    java.lang.OutOfMemoryError: PermGen space 解决方案

    JDK 6 TOMCAT 6 Eclipse 3.3 Myeclipse 6.07.0 安装说明

    ### JDK 6、TOMCAT 6、Eclipse 3.3、Myeclipse 6.0/7.0 安装指南 #### 一、安装 JDK 6 JDK (Java Development Kit) 是开发 Java 应用程序的基础工具包。在安装 Eclipse 或 Myeclipse 前必须先安装 JDK,因为它们...

    OutOfMemoryError-PermGen-space-的解决方案亲测有效

    在开发或运行基于Java的应用程序时,有时会遇到一个常见的错误提示:“OutOfMemoryError: PermGen space”。该错误通常发生在应用程序使用大量类加载器或者频繁进行类的加载与卸载时。本文将详细介绍这一错误的原因...

    jdk+tomcat+Eclipse(JAVA环境开发配置)

    在Java Web开发中,搭建一个合适的开发环境是至关重要的第一步。本教程将详细介绍如何配置`JDK`、`Tomcat`以及`Eclipse`...记得在配置过程中耐心细致,遇到问题不要怕,多查阅文档或在线求助,相信你很快就能熟练掌握。

    最后一版支持JDK1.8的eclipse eclipse-jee-2020-06-R-win32-x86_64

    "eclipse-jee-2020-06-R-win32-x86_64"是Eclipse针对Windows 32位x86_64架构的一个版本,发布于2020年6月,它是最后支持JDK 1.8的Eclipse版本。这个特定版本对于那些仍然依赖Java 8进行开发的用户来说至关重要,因为...

    JDK 6 update 10 ( windows ) part5.rar

    JDK 6 update 10 ( windows ) 总计72.9M,因为上传文件限制为15M,所以用rar分成了5个部分。

    eclipse+jdk1.8资源下载

    《Eclipse与JDK1.8:开发者的必备工具》 Eclipse和JDK1.8是Java开发者不可或缺的两大工具,它们共同构建了高效、稳定的编程环境,为Java应用程序的开发提供了强大的支持。 首先,让我们来了解一下Eclipse。Eclipse...

    JDK 6 update 10 ( windows ) part4.rar

    JDK 6 update 10 ( windows ) 总计72.9M,因为上传文件限制为15M,所以用rar分成了5个部分。

    eclipse的安装包 jdk8对应版

    5. 如果在使用过程中遇到问题,Eclipse提供了丰富的帮助文档和社区支持。你可以访问Eclipse官网,查找官方文档或在线论坛寻求帮助。 6. 要运行Java项目,确保Eclipse已经正确配置了JDK路径。这通常在Window > ...

    eclipse开发工具jdk1.8补丁

    eclipse开发工具jdk1.8补丁 将 Javacompiler1.8放在eclipse开发工具的plugins下,打开eclipse菜单-help-install new software-add-archive。

    eclipse更新maven,jdk改变解决办法

    在eclipse中新建了一个Maven工程,然后更改JDK版本为1.7,结果每次使用Maven > Update project时JDK版本都恢复成1.5。这是因为Maven的默认设置和Eclipse中的Maven集成方式所致。Maven的编译器插件默认使用javax....

    免费下载jdk1.8和eclipse软件,附带说明。

    一般不推荐下载最新版jdk,大家想,新出来的事物,都会有一个测试期有些功能不怎么稳定,而jdk1.8要稍微稳定些,所以在学校里面老师都一般让我们下载jdk1.8。有些时候我们去国外的官网上下载东西,不仅要克服英文...

    在用Eclipse+JDK+Tomact5.5开发遇到的问题

    在IT开发领域,尤其是Java Web开发中,使用Eclipse、JDK与Tomcat进行集成开发是一种常见的技术组合。然而,在实际操作过程中,开发者可能会遇到一系列的技术难题,这些难题往往涉及环境配置、依赖管理以及插件集成等...

    Java 学习笔记 开发环境搭建JDK+Tomcat+Eclipse

    ### Java学习笔记:开发环境搭建JDK+Tomcat+Eclipse #### 一、开发工具获取 ##### 1、开发工具包JDK JDK(Java Development Kit)是Java语言的基础软件包,它提供了编译、运行Java程序所需的所有工具。 - **下载...

    jdk6\jdk7_linux_64

    JDK 6 Update 45是这个版本的第45次更新,通常会修复已知的安全漏洞,性能问题,并可能包含一些新的功能或改进。使用这个版本,开发者可以确保他们的代码运行在稳定和安全的环境中。 **JDK 7**: 继JDK 6之后,JDK ...

    eclipse-inst-win64+jdk1.8

    标题 "eclipse-inst-win64+jdk1.8" 暗示了这是一个针对Windows 64位操作系统的Eclipse安装程序,同时包含了Java Development Kit(JDK)的1.8版本。Eclipse是一个非常流行的开源集成开发环境(IDE),主要用于Java...

    eclipse和jdk的版本

    5. 测试环境一致性:在开发环境中使用与生产环境相同版本的JDK和Eclipse可以帮助减少因版本不一致导致的问题。这有助于确保代码在部署到生产环境时能够正常运行。 总结来说,理解Eclipse和JDK的版本关系对Java...

    eclipse win64以及jdk安装包

    在"窗口"菜单中选择"首选项",然后导航到"Java" -> "安装JREs",添加JDK的路径。这样,Eclipse就能识别出JDK,并用于编译和运行Java程序。 总的来说,"eclipse Oxygen下载安装包以及jdk安装包"为Java和JavaEE开发...

Global site tag (gtag.js) - Google Analytics