IntelliJ IDE에 Java
응용 프로그램을 쓰고 있습니다. 응용 프로그램은 Rserve()
을 사용하여 R
에 연결하고 스크립트에 액세스합니다. 첫 번째 질문은 : 현재 내 R
스크립트는 내 메인 자바 프로젝트 폴더 바로 아래에 있습니다. R
스크립트에 액세스하기 위해, I는 RConnection
를 생성하고 다음 코드를 사용상대 경로와 실행 가능한 jar의 R 연결 문제
RConnection rc1 = new RConnection();
rc1.assign("parseFile", currentPath.concat("/parseFile.R"));
rc1.eval("source(parseFile)");
코드의 currentPath
변수 I 이것을 사용하여 구하는 절대 경로이며, 그러나
final String currentPath = currentRelativePath.toAbsolutePath().toString();
을 내 코드를 변경하고 상대 경로를 사용하여 R
개의 스크립트에 액세스하고 싶습니다. 이를 위해 src
폴더에 rscripts
폴더를 만들고이 폴더에 내 R
개의 스크립트를 배치했습니다. intireiJ에서 Mark directory as
옵션을 사용하여이 디렉토리를 Sources root
으로 표시했습니다.
org.rosuda.REngine.Rserve.RserveException: eval failed, request status: error code: 127
이는
R
스크립트가 액세스 할 수없는 것으로 보인다 오류에 상대 : 지금은 오류, 그러나
rc1.assign("parseFile", "/rscripts/parseFile.R");
rc1.eval("source(parseFile)");
: 스크립트를 액세스하기 위해 코드를 다음과 같이 변경했다. R
스크립트에 액세스하는 상대 경로는 어떻게 사용해야합니까?
둘째, jar 파일로 응용 프로그램을 제공하고 싶습니다. 사용자가 시스템에 R을 설치하지 않은 경우를 대비하여 R
을 jar
파일과 함께 제공해야합니까?
슬래시로 시작하는 것은 절대 경로를 의미합니다. 나는 자바와 eval에서 파일 내용을 문자열로 읽어 들일 것이고, 그렇게 잘못 될 것 같지 않다. –