2017-09-28 9 views
0

마지막 자바 버전으로 rJava를로드하거나 컴파일/설치하지 못하는 것 같습니다.rJava 또는 R이 다른 (이전) 자바 버전을 사용하도록하십시오

java8 및 java9를 설치하고 rJava 또는 R에 java8 버전을 사용할 수있는 방법이 있습니까?


편집 : 아마도이 thread 내 문제의 해결책이 제시되었다,하지만 그것을하지 않습니다. 이후 새로운 버전이 아닌 더 낮은 버전을 사용해야합니다. R에게 java_home이 어디 있는지 말할 수는 있지만, 어떻게해야할지 모르겠다. 여기 R, Java, rJava and macOS adventures과 :

+5

[rJava에서 올바른 Java 버전을 가져 오지 못했습니다.] (https://stackoverflow.com/questions/28133360/rjava-is-not-picking-up-the-correct-java-version) – notyou

+0

It * 가능 * :) 어쨌든, 당신은 경로에 처음으로 Java8을 넣을 수 있습니까? – notyou

+0

시스템 경로에서 의미가 있습니까? 그렇다면 ... 단지 java8 만있는 것처럼 해결책이 아닙니다. 그렇죠? – lpuerto

답변

1

은 여기를보세요 R 3.4, rJava, macOS and even more mess ;)

R, 자바와 투쟁 할 수 있습니다 행복 소프트웨어의 모든 부분을 적절한 설정;

당신은 JAVA_HOME, R CMD 함께 플레이 할 필요) javareconf를 사용하고 소스에서 rJava를 컴파일하는 경우도 있습니다.

R에 대해서만 Java의 특정 버전이 필요한 경우 언제든지 다음과 같이 재생할 수 있습니다.

첫째, 단지 시스템에 자바 (9)이있을 것이다, R

-- start_R_with_Java_8.sh -- 
#!/bin/bash 
export JAVA_HOME=$(/usr/libexec/java_home -v 1.8.0_144) 
export PATH=$JAVA_HOME/bin:${PATH} 
R 

에게이 방법을 시작하기 전에

/usr/libexec/java_home -V 
Matching Java Virtual Machines (4): 
    9, x86_64: "Java SE 9" /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home 
    1.8.0_144, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_144.jdk/Contents/Home 
    1.8.0_111, x86_64: "Java SE 8" /Library/Java/JavaVirtualMachines/jdk1.8.0_111.jdk/Contents/Home 
    1.7.0_80, x86_64: "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_80.jdk/Contents/Home 

그런 다음, 하나를 선택하는 JVM의 목록을가있는 동안 R를 들어, 당신은 것입니다 1.8을가집니다.

+0

기여에 감사드립니다. 앞으로 참조 할 수 있도록 북마크에 추가 할 예정이지만 정확한 해결책은 아닙니다. 지금 당장은 모든 것이 실행되고 있지만 Java9를 제거하고 Java8을 다시 설치하기로 결정했습니다. 이 예제에서와 같이 Java8을 사용하여 많은 작업을 수행 할 필요가 없습니다. 여기에있는 문제는 rJava가 Java9와 실제로 호환되지 않는 것 같습니다. 그 이유 때문에 나는 둘 다를 가지고 있고 R의 하위 버전과 다른 것들을 위해 업데이트 된 것을 사용하는 방법을 찾고있었습니다. – lpuerto

+0

하지만 R로 제대로 작동하려면 JAVA_HOME을 편집해야하므로 설치가 정말 복잡해 보입니다. 다른 방법은 정말 쉬울 것 같습니다. R이 마지막 버전을 사용하고 필요한 경우 다른 버전을 더 많이 사용하도록하십시오. 나는 또한 jenv를 시도했지만 R과 실제로 호환되지 않는 것 같다. – lpuerto

+1

이 경우, R을 실행하기 전에 JAVA_HOME이 Java8을 가리킬 수 있다고 생각한다. 따라서 R에 대한 랩퍼 스크립트를 만들 수 있습니다. JAVA_HOME을 Java 8로 설정하고 R을 실행하십시오. 나머지 시스템의 경우 Java 9가 계속됩니다. 또한 Java 8을 다시 사용하려면 R을 재구성해야 할 수도 있습니다. – mko