====== Maven Central repository ====== * http://search.maven.org/ * 내 리포지토리 : http://central.maven.org/maven2/kr/pe/kwonnam/ ===== Maven Central Search ===== * https://github.com/mthmulders/mcs ===== Maven Central Google Mirror ===== * [[http://takari.io/2015/10/28/google-maven-central.html|Takari | Google is Maven Central's New Best Friend]] [[https://dzone.com/articles/googles-mirror-of-maven-central-25-faster|기본 저장소보다 25% 정도 빠르다고 함.]] * ''$HOME/.m2/settings.xml'' google-maven-central Google Maven Central https://maven-central.storage.googleapis.com central ===== Central Repository에 올리기 ===== * [[http://central.sonatype.org/pages/producers.html|자신의 오픈 소스 프로젝트를 Maven Central 리포지토리에 올리기]] * [[http://central.sonatype.org/pages/ossrh-guide.html|개인 오픈소스 Central Repository에 올리기]] * https://issues.sonatype.org/ 에서 JIRA 계정ᅟ을 생성한다. * Ticket을 생성하여 자신의 GroupID 소유권을 신청한다. 몇시간 정도 기다리면 허가 메일이 온다. * Gradle, Maven 등으로 프로젝트를 OSS 리포지토리에 올린다. * 배포 직후에는 private repository에 올라간다. * [[http://central.sonatype.org/pages/releasing-the-deployment.html|private을 실제 Central로 Release하기]] * https://oss.sonatype.org/ 에 접속하여 JIRA 계정으로 로그인 * 좌측 메뉴에서 **Staging Repositories** 선택 * 목록에서 보면 자신의 GroupID가 점(.)을 모두 제거한 이름으로 보이는데 그것이 내 소유의 리포지토리 * 자신의 리포지토리 선택 후, 아래에 리포지토리 정보들을 살펴보고 문제 없는지 확인한다. * 문제가 없으면 상단 메뉴의 **Close**를 클릭한다. 잠시 기다린다. * 해당 artifact에 문제가 없으면 상단에 **Releae** 버튼이 활성화 된다. 이것을 누르면 Central로 전송하는 과정이 시작된다. * http://repo1.maven.org/maven2/kr/pe/kwonnam/ 에서 내 프로젝트 싱크 됐는지 확인 * 최초 Release시에는 JIRA에 처음 만들었던 저장소 생성 요청 Ticket에 최초 릴리즈를 하였다고 댓글을 달아줘야만 싱크가 시작된다. * [[http://maven.apache.org/guides/mini/guide-central-repository-upload.html|Maven - Guide to uploading artifacts to the Central Repository]] * [[http://central.sonatype.org/pages/gradle.html|Publish gradle project to Central Repository]] * [[https://docs.sonatype.org/display/Repository/How+To+Generate+PGP+Signatures+With+Maven|How To Generate PGP Signatures With Maven]] * [[:pgp|PGP]] ===== 내 개인 Gradle 설정 ===== * ''~/.gradle/gradle.properties''에 넣거나 매번 ''-P프라퍼티''로 지정한다. signing.keyId=[PUBLIC Key ID] signing.password=[PASSWORD] signing.secretKeyRingFile=/home/[username]/.gnupg/secring.gpg ossrhUsername=[OSS Jira 사용자명] ossrhPassword=[OSS Jira 비밀번호] * ''secring.gpg''를 ''~/.gnupg'' 디렉토리에 복사해두고 * ''gpg %%--%%list-keys''로 **sub** hex 확인(/의 뒷부분)해서 keyId로 기입 * password 기입 ===== 참고 ===== * [[http://zerobrain.tistory.com/53|제로브레인의 안드로이드 이야기!! :: Maven Central 에 라이브러리 올리기]] * [[http://intohand.com/blog/post/how-to-publish-your-open-source-library-to-maven-central|How to publish your open source library to Maven central]]