MyEclipse启动tomcat出现java.lang.OutOfMemoryError: PermGen space 的解决方案GOOD

22 篇文章 0 订阅

PermGen space的全称是Permanent Generation space,是指内存的永久保存区域, 这块内存主要是被JVM存放Class和Meta信息的,Class在被Loader时就会被放到PermGen space中, 它和存放类实例(Instance)的Heap区域不同,GC(Garbage Collection)不会在主程序运行期对 PermGen space进行清理,所以如果你的应用中有很多CLASS的话,就很可能出现PermGen space错误, 这种错误常见在web服务器对JSP进行pre compile的时候。如果你的WEB APP下都用了大量的第三方jar, 其大小超过了jvm默认的大小(4M)那么就会产生此错误信息了。


一、手动设置MaxPermSize大小修改TOMCAT_HOME/bin/catalina.bat(windows系统)或者catalina.sh(unix系统)在“echo "Using CATALINA_BASE: $CATALINA_BASE"”上面加入以下行:set JAVA_OPTS=%JAVA_OPTS% -server -XX:PermSize=256M -XX:MaxPermSize=512m


二、如果启动Tomcat的时候是通过MyEclipse启动服务器的话,需要在MyEclipse里面同样设置内存大小



-Xms512m -Xmx1024m -XX:PermSize=128M -XX:MaxPermSize=256m

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 这个错误是因为在使用MyEclipse时,遇到了一个类找不到的异常。具体来说,错误消息中显示的类为"org/apache/jasp"。 出现这种错误可能有几个原因: 1. 缺少相关的类库:可能是由于项目中没有引入或者缺少必要的类库,导致找不到"org/apache/jasp"类。解决这个问题的方法是确认是否已经添加了必要的类库,可以尝试重新引入类库或者更新类库版本来解决。 2. 项目配置错误:可能是项目配置中缺少了必要的配置信息或者配置错误。可以检查项目的部署描述文件(如web.xml等)是否正确配置了JSP相关的配置信息。 3. 程序代码错误:可能是项目代码中存在错误,导致找不到"org/apache/jasp"类。可以检查项目中的代码,确认是否存在代码错误,特别是涉及到JSP的部分。 解决这个错误的方法有几种途径: 1. 添加缺少的类库:可以通过在项目中添加缺少的类库来解决找不到类的问题。可以从官方网站或者其他可靠的来源下载相应的类库,并引入到项目中。 2. 检查项目配置:可以检查项目的配置信息,确认是否正确配置了JSP相关的配置信息。特别是要确保web.xml文件中的配置正确,并且相关的Servlet和JSP文件能够正确被访问。 3. 检查程序代码:可以仔细检查项目中的代码,尤其是涉及到JSP的部分。确认代码中是否存在语法错误或者逻辑错误,及时修复这些错误。 综上所述,找不到"org/apache/jasp"类的错误可能是由于缺少类库、项目配置错误或者程序代码错误引起的。通过添加类库、检查项目配置和检查程序代码等方法,可以解决这个错误。 ### 回答2: 这个错误提示是由于缺少org/apache/jasp类而导致的Java.lang.NoClassDefFoundError异常。这通常发生在MyEclipse中运行JSP文件时。该错误可能有以下几种原因和解决方法: 1. 缺少相应的jar包:这种情况下,需要将缺少的jar包添加到项目的构建路径中。可以通过右键单击项目,选择"属性",然后选择"Java构建路径",在"库"选项卡中添加相应的jar包。 2. 项目配置问题:有时候,MyEclipse中的项目配置文件可能会出现问题,导致类无法加载。这时,可以尝试重新创建或导入项目,确保项目的配置文件正确。 3. 编译错误:该错误也可能是由于JSP文件自身的编译错误导致的。请检查JSP文件的语法和逻辑错误,并确保所有的依赖文件都正确引入。 4. MyEclipse版本问题:某些低版本的MyEclipse可能存在一些Bug和不稳定性问题,导致类加载错误。因此,尝试升级MyEclipse到最新版本,并重新运行项目。 总之,解决这个错误需要仔细检查项目的构建路径,项目配置文件,JSP文件的语法和逻辑错误,并且确保使用最新版本的MyEclipse。根据具体的情况尝试解决这些问题,可以成功解决这个错误。 ### 回答3: 在使用MyEclipse时遇到"[ERROR] failed jsp java.lang.NoClassDefFoundError: org/apache/jasp"错误,出现这个错误通常是因为缺少相关类文件或者类文件未正确引入。 首先,我们需要确认是否已经正确导入相关的jar包,特别是与JSP相关的jar包。检查项目的classpath是否包含了`jsp-api.jar`、`servlet-api.jar`等必要的JSP和servlet类库。如果没有这些jar包,可以从Tomcat、Jetty或者其他servlet容器中复制相应的jar包到项目的lib目录下。 其次,确保项目的构建路径正确配置。在MyEclipse中,可以通过右键单击项目,选择"Build Path",然后在"Libraries"选项卡中添加正确的类库。 另外,也要检查项目的部署路径是否正确设置。在MyEclipse中,可以通过选中项目,然后选择"Properties",在"Web Project Settings"中检查"Sync Context Path"是否正确。 如果上述方法都没有解决问题,可以尝试清理和重新构建项目。在MyEclipse中,可以选择"Project"菜单中的"Clean"和"Build All"选项,来清理和重新构建项目。 总之,通过确认类库的正确引入、构建路径的正确配置以及项目部署路径的正确设置,一般能够解决"[ERROR] failed jsp java.lang.NoClassDefFoundError: org/apache/jasp"错误。如果问题仍然存在,可以尝试在社区或官方论坛上提问,寻求更多的帮助和解决方案

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值