[HADOOP] Java에서 실행할 수 있도록 실행 파일을 압축 할 수 있습니까?
HADOOPJava에서 실행할 수 있도록 실행 파일을 압축 할 수 있습니까?
간단히 말해, 컴파일 된 실행 파일을 Java jar 파일에 저장 한 다음 Java에서 ProcessBuilder를 통해 실행할 수 있어야합니다.
그 이유는, Elastic Map Reduce 작업을 처리하는 이미지의 구성 요소로서 ImageMagick 실행 파일 주위에 Java 래퍼를 사용하고 싶습니다. EMR은 jar 파일 만 가져올 것으로 예상하므로 데이터 노드에 소프트웨어를 설치할 공간이 없다고 생각합니다.
해결법
-
==============================
1.jar 파일의 실행 파일은 리소스이며, Stream을 통해 액세스하고 TEMP 디렉토리로 실행 파일을 확장 한 다음 ProcessBuilder를 사용하여 실행할 수 있습니다.
jar 파일의 실행 파일은 리소스이며, Stream을 통해 액세스하고 TEMP 디렉토리로 실행 파일을 확장 한 다음 ProcessBuilder를 사용하여 실행할 수 있습니다.
File target = new File( System.getProperty( "java.io.tmpdir" ), <filename> ); InputStream is = getClass().getClassLoader().getResourceAsStream( <path to rc> ); OutputStream os = new FileOutPutStream( target ); <copy is to os> Process p = new ProcessBuilder( target ).start();
from https://stackoverflow.com/questions/15910235/is-it-possible-to-jar-up-an-executable-so-that-it-can-be-run-from-java by cc-by-sa and MIT license