180bpm
ADT/Gradle을 이용해 jar 라이브러리 생성하기 본문
매번 할때마다 지치는 라이브러리 만들기.
ADT는 옛날 방식에 가깝고 Gradle은 최근 방식이다.
ADT 참고 자료
https://xischrist.blog.me/220609500591
1. 이클립스 설치 ( 나는 2018.12 버전 설치)
- java was started but returned exit code=13 오류 발생시 eclipse.ini에 java 경로 추가
--launcher.appendVmargs\
-vm
C:/Program Files/Java/jdk1.8.0_191/bin/javaw.exe
-vmargs
2. ADT 플러그인 설치 https://striban.tistory.com/43
3. import -> existing android code into workspace
- 너무 오래전에 했던거라 까먹었었다. existing projects into workspace 로 하면 안드로이드 라이브러리들이 셋팅 안된다.
4. export -> JAR file
- 내경우는 라이브러리는 프로젝트에 이미 있으니 소스만 선택해서 뽑는다.
5. 동작 확인
Gradle 참고 자료
http://mornbr.blogspot.com/2015/11/androidgradle-jar-file.html
1. android studio 설치 ( 나는 3.3.1 )
2. build.gradle 셋팅
1. gradle 버전 변경
5.x에서 뽑아주는 2.1.0으로는 빌드가 안된다 3.3.1은 또 문제 있는거같은데.. 여튼 그래서 3.0.1
classpath 'com.android.tools.build:gradle:3.0.1'
2. 플러그인 관련 처리
아래꺼 보면서 없는건 추가하고 있는건 변경하도록 한다.
// apply plugin: 'com.android.application'
apply plugin: 'com.android.library' // 이걸로 변경해야 라이브러리로 뽑히나?
android {
defaultConfig {
minSdkVersion 16 // androidmanifest에서 제거하고 여기에 추가
targetSdkVersion 28 // androidmanifest에서 제거하고 여기에 추가
//applicationId 'com.app.package' // 라이브러리일경우 이건 필요없음
}
}
task deleteOldJar(type: Delete) {
delete 'export/lib.jar'
}
//task to export contents as jar
task exportJar(type: Copy) {
from('build/intermediates/intermediate-jars/release/') // 여기 경로는 gradle 버전에 따라 달라질 수 있으니 실행후 직접 확인 필요.
into('export/')
include('classes.jar')
///Give whatever name you want to give
// 자동이 안되는구나..
rename('classes.jar', 'lib.jar')
}
exportJar.dependsOn(deleteOldJar, build)
3. gradle 메뉴에서 exportJar 실행.
여기는 라이브러리가 포함되야할 경우가 문제다...