Maven Central에 Library Upload하기!!
1. 개요
- 개인 라이브러리를 메이븐 중앙 저장소에 올려, 다른 사람들과 손쉽게 공유할 수 있도록 한다.
- https://bintray.com 와 같은 대행 서비스가 있다.
- 저장소 관리 솔루션인 sonatype nexus 사에서 제공하는 OSSRH(Open Source Project Repository Hosting)가 있다. 이걸로 업로드 진행 할 예정.
2. 사전 작업
1) 계정 생성
- https://issues.sonatype.org/secure/Signup!default.jspa 에 접속한다.
- 계정을 생성하고, 이슈를 등록한다.
- "CREATE"를 눌러 이슈를 생성한다.
- https://issues.sonatype.org/browse/OSSRH-28348 와 같이 입력한다. (project 이름, group Id, url 등 입력)
- 생성 후 몇시간 또는 며칠이 지나면 이슈 상태가 "Resolved"로 변경되면, 댓글을 달아준다. 그럼 배포 준비 끝
2) pom.xml 작업하기.
- 저장소(scm), 개발자정보(), 라이센스 등 필수
3) $HOME/.m2/settings.xml 에 아래 텍스트 추가
4) snapshot deploy
- version 항목에 -SNAPSHOT 붙인다.
mvn clean deploy
- https://oss.sonatype.org/content/repositories/snapshots 에 본인 groupId를 들어가보면 확인 할 수 있다.
3. PGP 등록 및 Signing 하기
- Maven 프로젝트 각각의 보안을 위해 PGP라는 정보를 통해 확인
1) PGP 생성
- https://www.gnupg.org/download/index.html 에서 제공하는 툴로 생성
2) PGP 등록하기
- 생성한 키는 http://pgp.mit.edu/ 사이트에 등록해야한다. 일부 툴은 업로드도 제공해준다.
4. 배포하기
mvn clean deploy
5. 스테이징에서 릴리즈하기
- https://oss.sonatype.org/#welcome 에 접속하여 로그인한다.
- Staging Repositories 에서 본인 프로젝트 확인
- 내용 확인 후 "Close" 문제가 없으면 "Release"버튼 활성화 됨.
- "Release"를 누르면 끝!
6. 확인
- 10분정도 후에 릴리즈 되고
- 2시간 정도 후면 검색이 됨.
- http://search.maven.org/
7. 참고자료
- https://www.lesstif.com/pages/viewpage.action?pageId=30277671
- http://zerobrain.tistory.com/53
- http://central.sonatype.org/pages/ossrh-guide.html
- https://www.youtube.com/watch?v=dXR4pJ_zS-0&feature=youtu.be