我有一个 专用主机 拿来玩的 。内存只有128m
顺利安装完jdk 后,查看jdk 是否安装正确
java -version
然后就是 报错 :
[root@duoduo ~]# java -version
Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.
[root@duoduo ~]#
自己想可能是 默认参数 中 设置的内存过大 那样我自己设置个小点的启动参数
java -Xmx8m -version
Error occurred during initialization of VM
java.lang.OutOfMemoryError: unable to create new native thread
at java.lang.Thread.start0(Native Method)
at java.lang.Thread.start(Thread.java:640)
at java.lang.ref.Finalizer.(Finalizer.java:176)
8m 还不行!
java -Xmx4m -version
java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot(TM) Client VM (build 19.1-b02, mixed mode)
[root@duoduo ~]#
4m 正常了!
看看 还有多少内存可用
free
total used free shared buffers cached
Mem: 131072 12652 118420 0 0 0
-/+ buffers/cache: 12652 118420
Swap: 0
可见内存 是没有被其他程序占用的
然后 是不是 系统本身有限制
ulimit -a
core file size (blocks, -c) 0
data seg size (kbytes, -d) unlimited
scheduling priority (-e) 0
file size (blocks, -f) unlimited
pending signals (-i) 71680
max locked memory (kbytes, -l) 32
max memory size (kbytes, -m) unlimited
open files (-n) 1024
pipe size (512 bytes, -p) 8
POSIX message queues (bytes, -q) 819200
real-time priority (-r) 0
stack size (kbytes, -s) 10240
cpu time (seconds, -t) unlimited
max user processes (-u) 71680
virtual memory (kbytes, -v) unlimited
file locks (-x) unlimited
max memory size 已经设过不限制 stack size 也设置过1024 和10240 都 一样不行
没有办法了 不知道到底是什么原因 难道128m 就只能用4m!
现在看我 win7 4g 内存的系统
C:\Users\Lenovo>java -Xmx1024m -version
java version "1.6.0_24"
Java(TM) SE Runtime Environment (build 1.6.0_24-b07)
Java HotSpot(TM) Client VM (build 19.1-b02, mixed mode)
C:\Users\Lenovo>