기존에 잘 쓰던 코드가 있는데,
이 코드를 다른 분이 새로 받아서 빌드하려니까 jcenter 이슈로 안되었다는 것이다.
jcenter가 섭종하는 바람에,
jcenter가 가지고 있던 옛날 라이브러리들을 다운받을 수 없는 것...
기존에 쓰던 캐시들을 어떻게 불러와서 써야하는 것인가...
https://medium.com/@apfhdznzl/maven-%EC%8B%9C%EC%8A%A4%ED%85%9C%EC%97%90-%EB%8C%80%ED%95%9C-%EC%9D%B4%ED%95%B4-61aa03bbc514
* 다른 팀원분이 해결
- 우선 급한 대로 깃헙에 있는 라이브러리 코드를 다운받아서 모듈로 넣어버려서 해결하셨다.
해결 방법
GitHub에서 라이브러리를 모듈로 추가하는 과정을 상세히 설명해드리겠습니다:
- 소스 다운로드:
- https://github.com 라이브러리 접속
- Code > Download ZIP 클릭
- 다운로드 받은 ZIP 파일 압축 해제
1. 안드로이드 프로젝트에 모듈 추가
1. Android Studio에서: File > New > Import Module 선택
2. Source Directory에서: 압축 해제한 'FlexibleAdapter-master/flexible-adapter' 폴더 선택
3. Module name에서: ':flexible-adapter' 입력 (또는 원하는 모듈 이름)
2. settings.gradle에 모듈 추가 확인
include ':app'
include ':flexible-adapter' // 이 줄이 자동으로 추가되었는지 확인
3. flexible-adapter 모듈의 build.gradle 수정
4. app/build.gradle에 의존성 추가
dependencies { implementation project(':flexible-adapter') }
프로젝트 동기화:
- File > Sync Project with Gradle Files 클릭
문제 해결: 만약 빌드 에러가 발생한다면:
- Build > Clean Project
- Build > Rebuild Project
- File > Invalidate Caches and Restart
저렇게 라이브러리를 모듈로 추가하게 되면, 라이브러리 별로 aar 파일이 생기게 된다.
AAR(Android Archive) 파일의 동작 방식에 대해 알아보자.
- flexible-adapter-release.aar 파일
- 컴파일된 코드(.class 파일들)
- 리소스 파일(res 폴더)
- AndroidManifest.xml
- 의존성 정보
- assets 등을 포함한 바이너리 파일입니다.
- 프로젝트에서 사용하는 방법:
- AAR의 장점:
- 라이브러리 코드를 프로젝트 내부에 포함
- 외부 저장소(jcenter 등) 의존성 제거
- 네트워크 없이도 빌드 가능
- 버전 관리 용이
- 코드 수정 및 커스터마이징 가능
- 파일 위치:
이렇게 생성된 AAR 파일을 통해 라이브러리를 안정적으로 사용할 수 있습니다.
예전에 쓰던 라이브러리라 mavenCentral 저장소에는 없다. 급한 불은 껐지만 저 라이브러리가 쓰인 부분을 대체해서 걷어내도록 해봐야겠다...
'Android' 카테고리의 다른 글
[Android] 강제 업데이트 & 수동 업데이트 ? (0) | 2024.11.13 |
---|---|
[Kotlin] 제네릭 (0) | 2024.11.12 |
[Android] 토스트 메세지 디스플레이 설정 대응 (0) | 2024.11.08 |
[Android] 키보드 높이 알아내기 (0) | 2024.11.04 |
[Android] 약간의 팁들 정리 (0) | 2024.10.15 |