https://maven.apache.org/plugins/maven-assembly-plugin/usage.html
https://www.lesstif.com/display/JAVA/maven+assembly+plugin
맵리듀스 프로그래밍 시 Java, Hadoop 기본 라이브러리 말고 다른 라이브러리를 쓸 때 마다 classpath에 추가해 줘야 되서 귀찮음을 느끼고 있었는데, maven에서 dependencies를 모두 모아서 jar를 만들어 주는 기능이 있다는게 생각났다.
<project> [...] <build> [...] <plugins> <plugin> <artifactId>maven-assembly-plugin</artifactId> <version>3.1.0</version> <configuration> <descriptorRefs> <descriptorRef>jar-with-dependencies</descriptorRef> </descriptorRefs> </configuration> <executions> <execution> <id>make-assembly</id> <!-- this is used for inheritance merges --> <phase>package</phase> <!-- bind to the packaging phase --> <goals> <goal>single</goal> </goals> </execution> </executions> </plugin> [...] </project>
위에 처럼 pom.xml에 추가하고 maven 빌드하면 xxx-jar-with-dependencies.jar 파일이 하나 더 생긴다. 그 파일을 이용하면 별도의 classpath 입력 없이 사용 가능하다.
댓글 없음:
댓글 쓰기