jeb配置java环境_jeb 提示 java help space
java.lang.OutOfMemoryError这个错误我相信大部分开发人员都有遇到过,这种现象在专业上叫Java 内存溢出(java.lang.OutOfMemoryError)。产生该错误的原因大都出于以下原因:JVM内存过小、程序不严密,产生了过多的垃圾。不过不要害怕,下面我们来看看他产生的原因:
导致OutOfMemoryError异常的常见原因有以下几种:
内存中加载的数据量过于庞大,如一次从数据库取出过多数据;
集合类中有对对象的引用,使用完后未清空,使得JVM不能回收;
代码中存在死循环或循环产生过多重复的对象实体;
使用的第三方软件中的BUG;
启动参数内存值设定的过小;
此错误常见的错误提示:
tomcat:java.lang.OutOfMemoryError: PermGen space
tomcat:java.lang.OutOfMemoryError: Java heap space
weblogic:Root cause of ServletException java.lang.OutOfMemoryError
resin:java.lang.OutOfMemoryError
java:java.lang.OutOfMemoryError
解决java.lang.OutOfMemoryError的方法有如下几种:
一、增加jvm的内存大小。方法有: 1)在执行某个class文件时候,可以使用java -Xmx256M aa.class来设置运行aa.class时jvm所允许占用的最大内存为256M。 2)对tomcat容器,可以在启动时对jvm设置内存限度。对tomcat,可以在catalina.bat中添加:
set CATALINA_OPTS=-Xms128M -Xmx256M
set JAVA_OPTS=-Xms128M -Xmx256M
或者把%CATALINA_OPTS%和%JAVA_OPTS%代替为-Xms128M -Xmx256M
3)对resin容器,同样可以在启动时对jvm设置内存限度。在bin文件夹下创建一个startup.bat文件,内容如下:
@echo off
call "httpd.exe" "-Xms128M" "-Xmx256M"
:end
其中"-Xms128M"为最小内存,"-Xmx256M"为最大内存。
二、 优化程序,释放垃圾。
主要包括避免死循环,应该及时释放种资源:内存, 数据库的各种连接,防止一次载入太多的数据。导致java.lang.OutOfMemoryError的根本原因是程序不健壮。因此,从根本上解决Java内存溢出的唯一方法就是修改程序,及时地释放没用的对象,释放内存空间。 遇到该错误的时候要仔细检查程序,嘿嘿,遇多一次这种问题之后,以后写程序就会小心多了。
Java代码导致OutOfMemoryError错误的解决:
需要重点排查以下几点:
检查代码中是否有死循环或递归调用。
检查是否有大循环重复产生新对象实体。
检查对数据库cha询中,是否有一次获得全部数据的cha询。一般来说,如果一次取十万条记录到内存,就可能引起内存溢出。这个问题比较隐蔽,在上线前,数据库中数据较少,不容易出问题,上线后,数据库中数据多了,一次cha询就有可能引起内存溢出。因此对于数据库cha询尽量采用分页的方式cha询。
检查List、MAP等集合对象是否有使用完后,未清除的问题。List、MAP等集合对象会始终存有对对象的引用,使得这些对象不能被GC回收。
这样解释是不是挺枯燥的,希望可以帮到你。求最佳了,其他问题可以继续联系我。谢谢您了 求最佳
jeb配置java环境_jeb 提示 java help space相关推荐
- hive环境搭建提示: java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument
hive环境搭建提示: java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument SLF4J: A ...
- vscode可以配置开发环境c或java。
本篇文章虽然是VsCode挂名,但其实介绍了两款神器: Vscode和Vim, 这两个结合起来,开发效率蹭蹭蹭!!! 之前接触过VsCode但很少用.总感觉写Python不如pycharm香,还得安 ...
- vscode java环境_VSCode中Java开发环境的配置方法
vscode中怎么搭建Java开发环境?下面本篇文章给大家介绍一下VSCode配置Java开发环境的方法.有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 配置Java开发环境 主要参 ...
- 为什么要配置Java环境变量以及Java环境变量的配置
一.为什么要配置环境变量? 1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把 jdk安装目录下的b ...
- Jupyter 配置 Java环境,写Java代码,测试成功
本次简单诉说下怎么通过jupyter安装iJava,写Java代码. 安装Java的不说了 我使用的是Java15 然后去:https://github.com/SpencerPark/IJava/r ...
- 如何搭建java环境_vscode搭建java环境
首先,下载Jdk,Jre进行安装其次,设置环境变量,指向你的java安装目录安装JavaIDE软件,比如MyEclipse,当然MyEclipse自带jdk,可以直接使用,不用配置环境变量,但是最好配 ...
- Java环境变量设置-Java
前年有接触Java,当时王同学还很细心地教我如何配置环境变量,无奈,自己学习了几天之后,就不了了之了..今年感觉也蛮有兴趣,于是又重新拾起来了. 一.先下载jdk 首先我们需要下载java开发工 ...
- ubuntu装java环境_Ubuntu安装Java环境
步骤1:下载jdk 我选择的jdk版本文件: jdk-8u131-linux-x64.tar.gz 步骤2:创建单独的目录 sudo mkdir /usr/local/java 步骤3:将下载的文件复 ...
- Java 答疑:为什么修改 Java 环境变量之后 java -version 不变?解决方式汇总
文章目录 前言 一.错误场景预演 1.1.查看本地旧版本 1.2.java -version 不变问题产生 二.检查新安装 JDK 是否配置正确 2.1.下载并解压目标 JDK 2.2.配置 Java ...
- 未检测到Java SDK 环境-Java环境变量设置-Java开发环境搭建
首先附上最新的Java JDK 的下载地址: http://pan.baidu.com/s/1dEY5fCt (jdk_8u101_windows_i586_8.0.1010.13) 对于Java环 ...
最新文章
- oss One or more of the specified parts could not be found or the specified entity tag
- 传统BI为什么注定会失败?
- 【通信原理】【实验】实验二:数字基带传输实验(GZHU)
- ann matlab,人工神经网络ann及其matlab仿真.ppt
- 线程池 调度 java_java调度器和线程池总结
- 我的ActiveRecord学习之路(一)
- java项目运维手册
- 计算机主板巨头,主板主要厂商
- php英语大全,学习php编程语言 php常用英语单词
- 连接服务器显示句柄无效,句柄无效。 (从HRESULT异常:0x80070006(E_HANDLE))
- VS编程,WPF中响应键盘事件、检测键盘键是否按下的一种方法
- 短信验证码平台哪家速度快又稳定,推荐下?
- MySQL高级篇——锁的概述与案例应用
- NO.119 不懂语言代码,超级菜鸟的建站分享(二):界面设置。
- 【机器学习】决策树(实战)
- 自己整理mysql语句
- 实现QQ表情功能(1)
- 中科院计算机和理论物理双硕士白,[中科院物理研究所]2005年硕士招生专业及研究方向_跨考网...
- LabVIEW学习笔记十三:窗格详解(调整窗格大小时缩放特定对象)
- mysql本周 下周下月_sql 统计本周,本月,下周,下月sql语句
热门文章
- 电气工程类中文核心期刊
- android炫酷动画源码,QQ菜单、瀑布流、二维码源码
- 50套3dmax家具建模详细教程 3dmax床建模教程丨3Dmax基础教程3dmax教学3dmax室内设计教程
- r430服务器如何用u盘做系统,DELL R430服务器U盘安装操作系统指南.docx
- 三星android智能手机usb驱动程序,三星手机安卓USB驱动Samsung USB Driver for Mobile Phones 1.5.51.0...
- linux 下查看文件字符编码和转换编码 360doc,Linux 下查看文件字符编码和转换编码...
- MAPGIS提示请在“系统设置”里设置好系统库路径(SUVSLIB或者其他)再重新运行程序
- linux的php探针使用,php探针在Linux下的安装过程
- linux网络对时命令
- 硬笔行书字帖3500常用字_2018年【成年人实用硬笔行书】一对一直播培训简介