[Maven] maven으로 jar 파일 빌드 시 MANIFEST.MF 파일 추가 및 MANIFEST.MF에 git 정보 추가하기
오늘은 maven 으로 빌드하여 jar 파일을 만들 때 jar 파일에 MANIFEST.MF 파일이 생성되도록 하는 것과, MANIFEST.MF 파일에 git 정보 및 자신이 작성하고 싶은 내용들을 작성하는 방법에 대해서 알아보겠습니다.
본 포스트를 작성하게 된 이유
회사에서 제가 관리하는 프로젝트들 ant build를 사용하다가 종속성 문제와 다른 팀들은 모두 maven build를 사용하고 있어 공통으로 맞추고자 maven build로 바꾸게 되면서 ant build로 jar 파일을 생성할 때에는 MANIFEST.MF 파일을 jar 파일 내부에 생성하고 정보도 추가해 주도록 되어 있었지만 (정확한 정보가 추가가 되지는 않았습니다…) maven build로 변경하면서 저는 maven에서는 MANIFEST.MF 파일 생성이 안되나 보다 하고 있었습니다.
그러다 다른 팀에서 제가 속한 팀이 관리하고 있는 모듈의 자세한 정보 파악을 위해 jar 파일 내부에 MANIFEST.MF 파일이 필요하다는 요청을 받게 되었고, 요청을 처리하면서 maven에서도 빌드 시 MANIFEST.MF 을 생성할 수 있고, 추가하고 싶은 내용도 추가할 수 있다는 것을 알게되어 알게 된 내용들은 포스트로 작성하여 기록을 해놔야 겠다는 생각을 하게 되어 본 포스트를 작성하게 되었습니다. 그리고 한국어로 쓰여진 블로그에서는 maven 빌드 시 MANIFEST.MF 파일을 생성하거나, maven으로 MANIFEST.MF 파일을 생성할 때 넣고 싶은 내용을 추가하는 방법에 대해서는 포스팅 내용이 없어 본 포스트를 써야겠다는 생각도 하게 되어 포스트를 작성하게 되었습니다.
maven 빌드 시 MANIFEST.MF 파일 추가하는 방법
pom.xml 파일의 build 항목에 다음과 같이 추가를 해주면 maven 빌드 시 MANIFEST.MF 파일이 추가가 됩니다
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>3.1.1</version>
<configuration>
<archive>
<manifestEntries>
<version>${version}</version>
</manifestEntries>
</archive>
</configuration>
</plugin>
</plugins>
</build>
MANIFEST.MF에 원하는 정보를 넣고 싶다면 manifestEntries
내부에 자신이 넣고자 하는 것을 다음과 같은 방법으로 추가를 해주면 됩니다.
에 MANIFEST.MF에 내가 넣고자 항목을
<넣고자하는항목>넣고자하는내용넣고자하는항목>으로 추가해주면 됩니다. 아래 예시에서는
로 넣어 주었을 때 MANIFEST.MF 파일에 씌여지는 예시이다.
Comments