Help us understand the problem. What is going on with this article?

MacOSXで「Error: This Java instance does not support a 32-bit JVM.」出たときの対処法

More than 5 years have passed since last update.

MacOSXにJRubyインストールしようとしたらタイトルのエラーが出てしまった。

$ rbenv install jruby-1.7.19
:
Error: This Java instance does not support a 32-bit JVM.
Please install the desired version.

そんな時の対処法。

/usr/libexec/java_home-dオプション

MacOSXにある/usr/libexec/java_homeを利用すればインストールされているJavaの中で条件に合うJVMのJAVA_HOMEを教えてくれる。今回は-dオプションを利用する。

[-d/--datamodel <datamodel>]     Filter JVMs capable of -d32 or -d64

デフォルトで1.7.0_75インストールしていたわけだが、

$ java -version
java version "1.7.0_75"
Java(TM) SE Runtime Environment (build 1.7.0_75-b13)
Java HotSpot(TM) 64-Bit Server VM (build 24.75-b04, mixed mode)

32-bitをサポートしているJVMを探す。

$ /usr/libexec/java_home -d32
/System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home

あったので、こいつをJAVA_HOMEにぶっ込めばOK。

$ export JAVA_HOME=$(/usr/libexec/java_home -d32)
$ rbenv install jruby-1.7.19

無事インストールできましたと。

classi
学校の先生・生徒・保護者向けのB2B2Cの学習支援Webサービス「Classi(クラッシー)」 を開発・運営している会社です。
https://classi.jp/
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away