2013-03-14 6 views
0

r의 최신 버전에서 "dismo"패키지를 사용하여 큰 종 배포 모델을 구축 중입니다. 나는 다음과 같은 오류가rJava 메모리 오류

me <- maxent(x=train, p=p) 

: 나는 코드를 사용하여 기본 모델을 처리하기 위해 갈 때

> Error in .jcall(mxe, "S", "fit", c("autorun", "-e", afn, "-o", dirout, 
> : java.lang.OutOfMemoryError: unable to create new native thread 

이 유래에서 논의하고이 오류에 대한 인터넷은 그러나 아무도 어떻게 해결하기 위해 보이지 않는다 r 코드에서이 문제를 해결하십시오. 이 문제에 대한 의견을 보내 주시면 감사하겠습니다.

건배, 이스라엘 dismo 패키지에서

+1

r 및 rjava에 대해 잘 모르기 때문에 JJVM을 실행하는 방법을 모르겠지만 Java가 실행 중인지 반드시 확인해야합니다. JVM은 사용할 메모리의 양을 알려주는 매개 변수를 취할 수 있습니다. 그래서, 그것은 당신이 볼 수있는 단서가 될 수 있습니다. –

+1

비슷한 오류가있어서 > options (java.parameters = "-Xmx200m")를 사용하여 할당 된 메모리를 늘려야했습니다. –

+1

메모리가 증가하면 JVM을 사용하도록 설정해야합니다. http : //www.bramschoenmakers.nl/en/node/726 – Ben

답변

1

: 당신이 MaxEnt 더 많은 메모리 (그것을 실행하는 자바 가상 머신)을 부여하려면, 당신은 에 의해 1기가바이트이 ​​뭔가를 (실행중인 것을 할 수) 전에 dismo 라이브러리를로드하십시오.

options(java.parameters = "-Xmx1g") 

Mac (Apple) 컴퓨터에서이 기능을 사용할 때 일부 사람들이 문제를 신고했습니다. 특히 다음과 같은 오류 메시지가 나타납니다.

Error in .jcall(mxe, "S", "fit", c("autorun", "-e", afn, "-o", dirout, : java.lang.InternalError: Can’t start the AWT because 
Java was started on the first thread. Make sure StartOnFirstThread is not specified in your application’s Info.plist or on the command line. 

이것은 Mac의 특정 Java 응용 프로그램에서 알려진 문제입니다. 우리가 알고있는 두 가지 해결 방법이 있습니다 :

1) 라이브러리 rJava를 실행하기 전에 Sys.setenv (NOAWT = TRUE)를 실행하십시오 (이것은 rJava가로드되지 않은 경우에 dismo가 수행하는 것입니다). 2) JGR 인터페이스 (Java 기반 R GUI)를 사용하십시오. 여기에서 JGR을 설치할 수 있습니다 :