주간 인기 게시물

총 게시물 39,238건, 최근 0 건 안내 RSS 글쓰기
이전글  다음글  목록 글쓰기
[안드로이드]

안드로이드 Gradle Dependency 관련 문의

글쓴이 : 가가멜론 날짜 : 2019-01-25 (금) 17:48 조회 : 655
글주소 : http://www.androidside.com/B49/170566
 
  GRADLE 교보문고
온라인서점, e-교환권 최대 9천원+간편결제/카드혜택 8만6천원, 바로드림 서비스
www.kyobobook.co.kr
  GRADLE, 알지오
IT전문교육 실무중심 GRADLE, 원격평생교육시설 정식인가.
www.alzio.co.kr/
  예스폼 각종 컴퓨터출장서비스
서식분야 랭키1위, 700만 회원이용! 컴퓨터출장서비스, 컴퓨터출장서비스 예스폼.
www.yesform.com
신청하기


안드로이드, 자바 그리고 다양한 질문에 대해 성실히 답해드립니다. Q&A Jang

안녕하세요.

궁금한 의문점이 생겨 조언을 듣고자 이렇게 글을 남깁니다.

상황은 이렇습니다.

LibA라는 안드로이드 aar을 만들기 위한 안드로이드 라이브러리 모듈이 있습니다.

LibA는 JodaTIme 라이브러리를 dependency로 참조하고 있고,

LibA 안에 있는 A라는 클래스에서 해당 JodaTime 라이브러리를 사용 합니다.

해당 LibA 모듈을 aar 로 빌드하고, app 모듈에서 해당 aar을 dependency로 추가하였습니다.

그림으로 보면 종속성은 아래와 같습니다.



이제 app 모듈을 빌드 성공하고 앱을 실행해보면  

java.lang.NoClassDefFoundError: Failed resolution of: Lorg/joda/time/DateTime 와 같은 에러가 발생합니다.

즉, aar을 사용하려면 aar에서 참조하는 모든 dependency를 app모듈의 dependency에 추가해야 된다는 

의미로 받아들여집니다.

Maven의 경우는 특정 라이브러리를 dependency로 추가하는 경우 해당 라이브러리가 가지고 있는

dependency들까지 모두 다운받고 빌드패스에 추가 된다고 알고 있는데, 왜 안드로이드는

이런식으로 설계가 된 걸까요? 아니면 다른 방법이 있는 걸까요?


또한, maven 레파지토리에 있는 라이브러리들을 안드로이드 dependency로 추가해도 위와 같이 동작하나요?

아니면 Gradle도 maven 레파지토리에 있는 라이브러리들은 pom파일이 있어 라이브러리의 종속성까지 모두 다운받고 

빌드패스에 추가되는 구조인가요?


고수님들의 답변 부탁드립니다. 





질문자가 자신의 포인트 5 점을 걸었습니다.
답변하시면 포인트 2을, 답변이 채택되면 포인트 4을 드립니다.

질문답변 게시판에서 궁금한 사항을 해결하셨다면, 애써 답변해주신 분께 잘 되었다고 따뜻한 댓글 한마디 남겨주세요.
그리고 답변해주신 분의 글을 '추천' 해주세요.
추천받으신 분에게 1포인트가, 추천하신 분에게도 1포인트가 적립됩니다. ^^

이전글  다음글  목록 글쓰기

 


Copyright ⓒ www.androidside.com. All rights reserved.
채팅 권한: 글쓰기 1개
2레벨 이상만 대화 가능
공개 채팅: 평일 !(9시 ~ 17시),토,일
안사2 변경사항 보러가기 챗방이 잘 안보이면 크롬에서 접속해주세요
챗방 숨기기 |  챗방 보이기