4

Windows 7 x64 システムで Eclipse を使用して JRI をセットアップしようとしています。ラップトップで一度試してみましたが、うまくいきました。R、rJava、JRIのインストールはすべてまったく同じですが、デスクトップでは失敗します。

JRI と R パスを次のように正しく設定しました。 C:\Program Files\R\R-2.15.1\library\rJava\jri;C:\Program Files\R\R-2.15.1\bin\x64

またR_DOC_DIR、Eclipseでなどを設定します。

実行しようとするたびにnew Rengine(...);、エラーや例外なしで失敗します。デバッグにより、次のことが明らかになりました。<terminated, exit value: 10>C:\Program Files\Java\jre6\bin\javaw.exe (01.10.2012 18:00:31)

何か試すことはできますか?どこでも同じ設定にもかかわらず、ラップトップでは機能するが、ワークステーションでは機能しないことは本当に気になります。

編集: Rengine オブジェクトを取得するために使用されるコード。

public static Rengine getRengine(){
    if (re == null) createRengine();
    return re;
}

public static void createRengine(){
    if (re!=null) return;
    try{
        if (!Rengine.versionCheck()) {
            System.err.println("** Version mismatch **");
            System.exit(1);
        }  
        String[] arguments = {"--save"};
        re=new Rengine(arguments, false, null);
        if (!re.waitForR()) {
            System.out.println("Cannot load R");
            return;
        }
    }
    catch (Exception e){
        e.printStackTrace();
    }
}

編集:最後に試したとき、エラーメッセージが表示されました(REngineの作成は機能しましたが、これはこれまでにありませんでした)、Rにはレジストリエントリがありませんでした。R 2.15.1 を再度インストールすると、突然動作しました。再起動後、以前と同じようになりました。REngine の作成時にプログラムがクラッシュします。

4

2 に答える 2

0

私は R 3.2.2 を使用しており、Windows 10 x64 で Eclipse Mars を使用しています。

今日、説明されている問題に直面し、少し試してみました。最後に、ビルド パスに根本的な原因が見つかりました。次の条件が満たされているかどうかを確認してください。

1.) ハードディスクの JIRI フォルダにある次の Java ライブラリは、(ユーザー) ライブラリとして含まれます。

  • JIRI.jar
  • REngine.jar
  • JRIEngine.jar

2.) ネイティブ ライブラリjiri.dllは、x86 のサブフォルダー「i386」にありますが、x64 の場合、サブフォルダー「x64」にあります。関連するものは、個別のネイティブ ライブラリの場所として、Eclipse プロジェクトの Java ビルド パスに追加されます。それ以外の場合、ファイルはメインの JIRI フォルダーに配置されていないため、考慮されない場合があります。

よろしくお願いします

フィリップ

于 2015-11-15T23:26:37.543 に答える
0

私はまったく同じ問題を抱えていました。R のバージョン番号でレジストリ エントリを作成するように求めるボックスのチェックを外していたことがわかりました。そのボックスをチェックしてインストーラーを実行すると、動作するように見えました。

regedit が次のようになっていることを確認します。 regeditのスクリーンキャップ

次は、これをポータブルな方法で動作させる...

于 2013-04-03T17:36:15.503 に答える