5

sshを使用してLinuxベースのサーバーに接続しました。最近、次のコマンドを使用してJDKをインストールしました。

sudo yum install java-1.6.0-openjdk-devel

そして、jdkは正常にインストールされましたが、コマンドを実行するjavajavac、次のエラーが発生するたびに:

Error occurred during initialization of VM
Could not reserve enough space for object heap
Could not create the Java virtual machine.

コマンドを実行しても、java -versionそのエラーが発生します。を使用してJavaにより多くのスペースを与えようとするとjava -Xmx512m -Xms256m -version、次のエラーが発生します。

*** glibc detected *** java: double free or corruption (!prev): 0x00007fc84400e270 ***
*** glibc detected *** java: double free or corruption (fasttop): 0x00007fc8440089f0 ***
#
Aborted (core dumped)

どうすればこれを解決できますか?

前もって感謝します

4

5 に答える 5

2

私はこの種の例外を見たことがないので、それは私の最善の推測です: -Xss JVMパラメーター(つまり、-Xms8m -Xmx16m -Xss4m)を使用してスタックサイズを制限しようとしましたか?また、すばやくグーグルするとexport MALLOC_CHECK_=0、それを乗り越えることができる可能性がありますが、JVMが正常に機能するかどうかはわかりません。

于 2012-10-25T08:55:20.143 に答える
1

仮想Linuxサーバー?実行すると何が得られますか:

java -Xmx1m -version

ulimit -a

メモリ割り当ての問題のようです。可能であれば、スワップスペースを増やすことを試みることができます。

于 2012-10-22T20:42:27.823 に答える
1

私には、仮想マシンを実行するのに十分なメモリ(おそらく物理メモリ、仮想メモリ、またはulimit)がないように見えます-VMに割り当てられたメモリ(64Mbのデフォルトだと思います)を増やしてはいけません。

于 2012-10-25T00:50:26.773 に答える
0

-Xms(xmxではなく)を下げます。たとえば、-Xms40mを使用します。他の回答に記載されているように起動する場合は、メモリが不足しているため、起動時にvm用に256mを再利用できない可能性があります。

于 2012-10-25T08:50:19.750 に答える
-1

JDK32ビットバージョンを使用しているようです。その場合、ヒープサイズをそれ以上に割り当てることはできません1.2GB

64ビットのJDKを使用するか1.2G、最大ヒープサイズとして試してください。

于 2012-10-15T05:23:32.043 に答える