Pure java kotlin 라이브러리 jitpack으로 배포하기
프로젝트 내부적으로 사용할 라이브러리를 만들면서 배포까지 욕심이 났습니다. 제가 만든 라이브러리도 implementation해서 사용할 수 있다면 좋을 것 같은데.. 라는 생각을 하면서 하나씩 해봤습니다.
먼저 제가 배포한 라이브러리는 아래와 같은 배경에서 개발되었습니다.
- gradle init으로 생성한 프로젝트입니다.
- intellij idea를 통해 개발했습니다.
- pure java kotlin으로 안드로이드 의존성을 참조하고 있지 않았습니다.
안드로이드에 의존성을 갖고 있는 라이브러리 배포와 관련된 글은 꽤 찾아볼 수 있었는데, pure java kotlin 라이브러리 배포는 찾아보기 어려워서 더 글을 작성해야겠다고 생각했습니다.
1. 모듈(라이브러리 모듈) build gradle 파일에 id 'maven-publish'를 추가해줍니다.
plugins {
...
id 'maven-publish' // <- 추가
}
2. 모듈(라이브러리 모듈) build.gradle 파일 하단에 publishing { } 블록을 추가해줍니다. 아래 publishing 내부에 있는 코드 전부 추가해주어야 합니다.
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
groupId = 'com.github.WonJoong'
artifactId = 'kodi'
version = '0.2.1'
}
}
}
이 부분에서 삽질을 많이 했는데, 안드로이드 의존성을 갖고 있는 라이브러리에서는 components.java가 아닌 components.release로 해도 되는 것 같았습니다. 하지만 pure java kotlin에서는 이 부분에서 계속 찾을 수 없다는 오류가 발생했고, 위와 같이 java로 하여 해결해주었습니다.
3. 프로젝트를 github에 올리고, github으로 이동해 Release Tag를 만들어줍니다. 이 때 프로젝트는 배포해야 하므로 public이여야 합니다.
4. 마지막으로 Jitpack.io에 등록합니다. https://jitpack.io/ 사이트로 이동해 아래 창에 본인 레포지토리 url을 추가합니다.
5. url을 추가하셨으면 Look up 버튼을 누르고 아래와 같은 화면을 확인하고 Get it을 클릭합니다.
6. 여기까지 배포는 완료되었고 사용하고자 하는 안드로이드 프로젝트에서 maven jitpack 추가하고 모듈 dependencies에서 implementation으로 추가하여 사용하시면 됩니다.
참 쉽죠?
저도 공부하면서 작성한 글이라 이번 글에서는 조금 자신감이 부족하네요. 혹시 틀린 부분이나 궁금한 점이 있으시다면 댓글로 남겨주세요~
감사합니다.
'프로그래밍 > 안드로이드+코틀린' 카테고리의 다른 글
[안드꿀팁] 특정 액티비티 실행 시키기 (1) | 2022.02.16 |
---|---|
Android Studio wifi로 앱 무선 디버깅하기 (0) | 2022.01.29 |
비동기 1편 - Android에서 Dispatcher란? (0) | 2022.01.21 |
Kotlin bufferedReader, bufferedWriter를 생활화하자 (0) | 2021.12.08 |
안드로이드 모듈은 어떻게 나누는 것이 좋을까? (0) | 2021.11.04 |