Javaは使い物になりません。

先日OpenJDKをインストールしたと書きましたが、

# java -version
 Error occurred during initialization of VM
 Could not reserve enough space for object heap
 *** glibc detected *** java: double free or corruption (out): 0xb763a260 ***
 ======= Backtrace: =========

 大量のエラーのため、省略。

と、Javaのバージョンすら確認できません・・・。

最大ヒープサイズを指定して実行すれば、

# java -Xmx64m -version
java version "1.6.0"
OpenJDK  Runtime Environment (build 1.6.0-b09)
OpenJDK Client VM (build 1.6.0-b09, mixed mode)

なんとかバージョンは確認できます。

次にコンパイルですが・・・

# javac HelloWorld.java
 Error occurred during initialization of VM
 Could not reserve enough space for object heap
 *** glibc detected *** javac: double free or corruption (out): 0xb761c260 ***
 ======= Backtrace: =========

 大量のエラーのため、省略。

こんにちは!とはなりません。

同じように、最大ヒープサイズを指定すると・・・

# javac -J-mx64m HelloWorld.java
# ll
 total 8
 -rw-r--r-- 1 root root 428 Apr 27 22:05 HelloWorld.class
 -rw-rw-r-- 1 root root 118 Apr 27 22:05 HelloWorld.java

そして、こちらもオプションつけて実行すれば、

# java -Xmx64m HelloWorld
Hello World !!

こんにちは!


いやぁ、メモリを結構使うJavaを動かすのは厳しそうですね。

DTI ServersMan@VPS(というか、OpenVZ系VPSサーバ)では、Javaは使わない方がよいかも。