Android Studio 프로젝트에서 .jar를 만드는 방법
AndroidStudio를 사용하고 다음과 같은 프로젝트가 있습니다.
파란색 원 안에있는 것은 myLib입니다. myLib는 또한 빨간색 원 안에있는 외부 라이브러리와 아파치 패키지 (녹색 원)를 사용합니다.
그래서 저는이 모든 것을 하나의 .jar로 만들고 싶습니다. 그래서 다른 프로젝트에서 사용할 수 있습니다.
단계별 가이드가 정말 감사하겠습니다. 저는 개발자 세계의 하나입니다.
감사합니다!
위의 코드 :
task deleteJar(type: Delete) {
delete 'libs/jars/logmanagementlib.jar'
}
task createJar(type: Copy) {
from('build/intermediates/bundles/release/')
into('libs/jars/')
include('classes.jar')
rename('classes.jar', 'logmanagementlib.jar')
}
createJar.dependsOn(deleteJar, build)
오른쪽에서 gradle 패널을 확장하고 yourlibrary-> others 아래의 모든 작업을 나타냅니다. 거기에 두 개의 새로운 작업이 표시됩니다 -createJar 및 deleteJar
작업이 작업으로 실행되면 createJar (예 : libs / xxxx.jar)에 언급 된 경로에서 생성 된 jar를 가져옵니다.
새로 생성 된 jar를 필요한 프로젝트의 lib 폴더에 복사-> 마우스 오른쪽 버튼 클릭-> "라이브러리로 추가"선택
Gradle에서 코드를 일반 Java 모듈로 설정하면 Gradle에서 콘텐츠가 포함 된 jar 파일을 제공하는 것이 정말 훌륭합니다. 해당 jar 파일에는 자신의 코드 만 존재하지 않는 다른 Apache 라이브러리는 없습니다. 이 방법으로 배포하는 것이 좋습니다. 라이브러리 내부에 라이선스를 가지고 묶는 것은 약간 이상하며, 해당 라이브러리의 사용자가 해당 버전을 자체적으로 포함해야하는 것이 더 일반적입니다 (그렇지 한 이름 프로젝트의 충돌이 라이브러리 복사본, 아마도 더 일반적입니다) . ). 또한 라이브러리를 게시하는 경우 다른 사람의 코드를 재배포하는 것과 관련된 것과 같은 라이선스 문제를 방지 할 수 있습니다.
jar로해야하는 코드를 가져와 Android 스튜디오의 별도의 일반 Java 모듈로 이동합니다.
- 파일 메뉴> 새 모듈 ... > Java 라이브러리
- 마법사에서 라이브러리, Java 패키지 이름 및 클래스 이름을 설정합니다. (클래스를 생성하지 않는 경우 모듈이 생성 된 후 수 있습니다.)
- Android 코드에서 새 사용할 수있는 새 모듈에 대한 라이브러리를 설정합니다.
- File > Project Structure > Modules > (your Android Module) > Dependencies > + > Module dependency . 아래 스크린 샷을 참조하십시오.
- 대화 상자의 목록에서 모듈을 선택하십시오.
이제 프로젝트가 빌드되기를 바랍니다. 빌드를 수행하면 Java 라이브러리의 jar 파일이 모듈 디렉토리 의 build / libs 디렉토리에 배치 됩니다. jar 파일을 직접 빌드하려는 Gradle 창에서 jar 빌드 파일 작업을 사용할 수 있습니다 .
Gradle은 이미 Task
그 아래에other
그런 다음 아래로 스크롤하여 createFullJarRelease
클릭하십시오.
그 후 프로젝트 의이 폴더에서 아티팩트를 사용할 수 있습니다.
Build > Intermediates > Full_jar > Release > CreateFullJarRelease > full.jar
관리자 자바 모듈의 build.gradle에 추가하기 만하면됩니다. 아카이브에 그들이 라이브러리가 포함됩니다.
mainClassName = "com.company.application.Main"
jar {
manifest {
attributes "Main-Class": "$mainClassName"
}
from {
configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
}
}
그러면 [module_name] / build / libs / [module_name] .jar 파일이 생성됩니다.
내가 방법은 프로젝트 컴파일러 출력을 찾는 것입니다 (프로젝트 구조> 프로젝트). 그런 다음 jar로 바꾸려는 모듈의 complied 폴더를 찾아서 zip으로 압축하고 출력의 상대방을 zip에서 jar로 변경합니다.
.jar 파일은 응용 프로그램을 자동으로 생성합니다.
root_folder / app / build / intermediates / bundles / debug에서 class.jar 파일을 사용할 수 있습니다.
task deleteJar(type: Delete) {
delete 'libs/mylibrary.jar'
}
task exportjar(type: Copy) {
from('build/intermediates/compile_library_classes/release/')
into('libs/')
include('classes.jar')
rename('classes.jar', 'mylibrary.jar')
}
exportjar.dependsOn(deleteJar, build)
AndroidStudio에서 gradle 작업을 실행하는 경우
assembleRelease
또는 터미널을 통해
./gradlew <moduleName>:assembleRelease
다음에서 사용할 수 .aar
있습니다<modulePath>/build/outputs/aar/<Name>.aar
그런 다음 .jar
명령 줄 도구를 사용하여 추가 작업 (예 : 생성 )을 수행 할 수 있습니다.
참고 URL : https://stackoverflow.com/questions/21712714/how-to-make-a-jar-out-from-an-android-studio-project
'IT' 카테고리의 다른 글
node.js의 express.js 프레임 워크에서 교차 출처 리소스 공유 (CORS)를 활성화하는 방법 (0) | 2020.08.26 |
---|---|
Twitter 부트 유효성 경고 메시지를 닫았다가 다시 메시지를 보냅니다. (0) | 2020.08.26 |
React Router 4에서 인증 된 경로를 구현하는 방법은 무엇입니까? (0) | 2020.08.26 |
Rails에 대한 착각의 최첨단은 무엇입니까? (0) | 2020.08.26 |
관계의 부모-자식 관계를 계층 적 트리로 변환 하시겠습니까? (0) | 2020.08.26 |