1
1

More than 1 year has passed since last update.

rJavaのロード時のエラーへの対処

Last updated at Posted at 2023-01-20

注) Windowsでの対処法を記載しています。Macとは手順が異なる場合があるので注意してください。

RでJavaを動かせるrJavaというパッケージがあります。テキストデータの処理などで使うことがありました。便利なパッケージですが、エラーメッセージが出て使えないという話をよく頂きます。今回は、その対象法について説明します。

エラーについて

インストールを行ったあとに、libraryでrJavaをロードします。

# install.packages('rJava')
library(rJava)

しかし、以下のエラーメッセージが表示される場合があります。使っているOSでエラーメッセージが違うみたいですね。

  • Windows
Error: package or namespace load failed for ‘rJava’:   .onLoad は loadNamespace()('rJava' に対する)の中で失敗しました、詳細は:    call: fun(libname, pkgname)    error: JAVA_HOME cannot be determined from the Registry
  • Mac
Unable to find any JVMs matching version "(null)". No Java runtime present, try --request to install.  エラー: package or namespace load failed for ‘rJava’:   .onLoad は loadNamespace()('rJava' に対する)の中で失敗しました、詳細は:    call: fun(libname, pkgname)    error: JVM could not be found   追加情報:  警告メッセージ:  1:  system("/usr/libexec/java_home", intern = TRUE) で:     命令 '/usr/libexec/java_home' の実行は状態 1 を持ちました  2:  fun(libname, pkgname) で:    Cannot find JVM library 'NA/lib/server/libjvm.dylib' Install Java and/or check JAVA_HOME (if in doubt, do NOT set it, it will be detected)

原因

1: パソコンにJavaが入っていない

そもそもJavaがRを使っているパソコンに入ってなければrJavaを動かせません。試しに、Javaを僕のパソコンから削除し、rJavaを読み込んだところ、上記のエラーメッセージが出現しました。

2: RとJavaの設定があっていない

Javaのアップデートを行った際に発生する場合があるようです。こちらはすでに解説記事がありましたので、解決方法に関しては、こちらをご覧ください[1]

解決方法

原因1への対処: Javaをパソコンにインストールする(Javaがパソコンに入っていない方)

以下の手順でパソコンにJavaをインストールしましょう[2]

  1. パソコンのビット数を調べる。
    調べ方↓
    [Windowsのマークのボタン] → [システム] → [バージョン情報]
    32bitか64bitかを確認する。

  2. Javaのインストーラーをダウンロード
    JavaのHPを開き(https://www.oracle.com/jp/java/)、[Javaをダウンロードする]をクリック。[x64 Installer]をダウンロード(僕のパソコンは64bitですので、x64を選びます)。
    *Javaをインストール!と言っていますが、厳密には、Javaの開発環境である(Java Development Kitをダウンロードしています。ですので、jdkという略称が実行ファイル名についています

  3. Oracle プロファイルへのサインイン
    Javaのダウンロードには「Oracle プロファイル」を作成する必要があるようです。作成したことがない場合、サインイン画面に自動で移動するようです。作成していない方は作成しましょう。

  4. Javaをインストール
    ダウンロードした実行ファイル(.exe)を開きましょう。

  5. 忘れない!環境変数の設定
    これ以降の作業までやらないとJavaを動かせないようです。Windowsの検索画面(虫眼鏡のマーク)で[システム環境変数の編集]と入力し、設定画面を開きます。下側の[環境変数(N)...]をクリック。次のポップアップの[新規(N)...]を押すと、以下の画面が表示されるので、必要な情報を入力します。
    image.png

変数名: 
JAVA_HOME
変数値:
JAVAフォルダの中にあるjdkから始まるフォルダ(パソコンにより違う場合大)

変数値ですが、Windows (C:)をクリックし(エクスプローラー(書類入れのマーク)を開いて出てくる左側の列から探してみてください)、その中のProgram Filesをクリック、そしてその中のJavaをクリックして、さらに、その中に入っているjdk- 19(19のところはバージョンによって異なる)をクリックしてください。
その後、表示画面の上部をクリックすると、
image.png

変数値へのパスが表示されます(↓)。これをコピーして、変数値のところに張り付ければOKです。
image.png

image.png

入力して[OK]を押すと、無事環境変数が設定されていますね。まだ画面を閉じないでください。
image.png

6. 忘れない!Pathの設定
次に、[Path]を選択し、[編集(E)...]をクリックします。
スクリーンショット 2023-01-19 132243.png

[新規(N)]をクリックし、以下を入力してください。

%JAVA_HOME%¥bin

image.png

入力が終わったら、[OK] → [OK]で設定画面を閉じましょう。

7. 忘れない!パソコンを再起動
変更を反映させます。

8. 環境変数が通っているかの確認
虫眼鏡のマークを押して、[コマンドプロンプト]と入力します。そうすると以下の画面が立ち上がります。
image.png

そちらの画面で以下のコードを入力してください。

java -version

image.png

[Enter]を押して、以下のようなJavaのバージョンが表示されれば(バージョンによって表示内容は違います)インストール成功です。

image.png

結果

RStudioに戻って、再度rJavaをロードしたところ、無事ロードできました。

image.png

最後に

この記事はWindows向けに書きましたが、Windows、MacなどOSに関わらず、JavaをパソコンにインストールすればrJavaを使用できるようになると思います。

参考にしたページ

[1] R エラーノート
[2] 【初心者向け】Windows10にJavaをインストールする方法

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1