[HADOOP] 하둡 프로젝트 받는다는 사용하여 여러 항목 항아리를 패키지화
HADOOP하둡 프로젝트 받는다는 사용하여 여러 항목 항아리를 패키지화
나는 받는다는하는 새입니다. 나는 그것의 종속성을 내 하둡 프로젝트의 항아리 패키지, 다음처럼 사용하려면 :
hadoop jar project.jar com.abc.def.SomeClass1 -params ...
hadoop jar project.jar com.abc.def.AnotherClass -params ...
그리고 나는이 항아리 (다른 하둡 작업)에 대해 여러 진입 점을 갖고 싶어.
어떻게 그것을 할 수 있을까?
감사!
해결법
-
==============================
1.종속성이있는 항아리를 만드는 두 가지 방법이있다 :
종속성이있는 항아리를 만드는 두 가지 방법이있다 :
첫 번째는 받는다는 어셈블리 정의 파일을 만들 필요하지만 현실에서 그 가치가보다 더 많은 번거 로움합니다. 두 번째는 또한 받는다는 어셈블리를 사용하지만 기술자 내장을 사용합니다. 두 번째를 사용하려면, 단지 프로젝트에 다음을 추가 -> 빌드 -> 플러그인 절을 치어에 :
<plugin> <artifactId>maven-assembly-plugin</artifactId> <version>2.4</version> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> </plugin>
당신이 MVN 패키지를 실행할 때 지금 당신은 당신의 대상 폴더에 두 개의 항아리를 얻을 수 있습니다 :
다중 엔트리 포인트를 들어, 특정 작업을 수행 할 필요가 없습니다, 단지 그렇지 않으면 기본은 Main-의 이름이없는, 당신은 명시 적으로 매니페스트를 구성하는 경우 당신이 (매니페스트 항아리에 메인 클래스 항목을 정의하지 않습니다 확인 클래스) 당신이 잘되어야합니다 그래서
from https://stackoverflow.com/questions/16300070/package-a-multiple-entry-jar-using-maven-for-hadoop-project by cc-by-sa and MIT license