복붙노트

[HADOOP] 하둡 프로젝트 받는다는 사용하여 여러 항목 항아리를 패키지화

HADOOP

하둡 프로젝트 받는다는 사용하여 여러 항목 항아리를 패키지화

나는 받는다는하는 새입니다. 나는 그것의 종속성을 내 하둡 프로젝트의 항아리 패키지, 다음처럼 사용하려면 :

hadoop jar project.jar com.abc.def.SomeClass1 -params ...
hadoop jar project.jar com.abc.def.AnotherClass -params ...

그리고 나는이 항아리 (다른 하둡 작업)에 대해 여러 진입 점을 갖고 싶어.

어떻게 그것을 할 수 있을까?

감사!

해결법

  1. ==============================

    1.종속성이있는 항아리를 만드는 두 가지 방법이있다 :

    종속성이있는 항아리를 만드는 두 가지 방법이있다 :

    첫 번째는 받는다는 어셈블리 정의 파일을 만들 필요하지만 현실에서 그 가치가보다 더 많은 번거 로움합니다. 두 번째는 또한 받는다는 어셈블리를 사용하지만 기술자 내장을 사용합니다. 두 번째를 사용하려면, 단지 프로젝트에 다음을 추가 -> 빌드 -> 플러그인 절을 치어에 :

    <plugin>
      <artifactId>maven-assembly-plugin</artifactId>
      <version>2.4</version>
      <configuration>
        <descriptorRefs>
          <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
      </configuration>
    </plugin>
    

    당신이 MVN 패키지를 실행할 때 지금 당신은 당신의 대상 폴더에 두 개의 항아리를 얻을 수 있습니다 :

    다중 엔트리 포인트를 들어, 특정 작업을 수행 할 필요가 없습니다, 단지 그렇지 않으면 기본은 Main-의 이름이없는, 당신은 명시 적으로 매니페스트를 구성하는 경우 당신이 (매니페스트 항아리에 메인 클래스 항목을 정의하지 않습니다 확인 클래스) 당신이 잘되어야합니다 그래서

  2. from https://stackoverflow.com/questions/16300070/package-a-multiple-entry-jar-using-maven-for-hadoop-project by cc-by-sa and MIT license