최근 안드로이드 스튜디오의 최신버전인 Artic Fox로 업데이트를 하고난 후 부터 기존에 개발하고 있던 모든 개인앱이 빌드가 되지 않았다. 

 

gradle sync를 할때마다 일부 라이브러리들이 전부 아래와 같은 로그로 401, 403을 띄우며 import에 실패하고 있었다.

Could not GET '라이브러리 저장소 주소'. Received status code 401 from server: Unauthorized

 

문제를 일으키는 라이브러리 중엔 앱 전반에서 메이저하게 사용중인 것도 포함되어 있어 라이브러리를 무작정 교체하기엔 작업 공수가 너무 큰 상황 😭 저 로그는 여러 상황에서 나올 수 있는 구문이라 구글링을 해도 명확한 해결방법이 나오질 않아 한참을 해맸다.

 

github repository를 방문해보니 동일한 문제를 겪고 있다는 이슈가 올라온걸 몇개 발견했으나, 개인이 관리하는 라이브러리라 답변이 달려있는게 없었다. 처음엔 캐시 삭제도 해보고, 원시적인 해결책인 재설치도 해보고, 맥북의 문제인가 싶어 데스크톱에서도 해보고, gradle 버전 문제인가 싶어 버전 5.x.x, 6.x.x, 7.x.x를 넘나들며 교체해봤지만 해결될 기미가 안보였다.

 

마지막으로 라이브러리 자체는 빌드가 되는지 확인해보려고 코드를 다운해서 살펴봤다. build.gradle에 작성된 repository server가 모두 jcenter로 되어있다는 공통점을 발견했다. 당연히 내 쪽에서 설정 문제가 있을거라 생각했는데... 2022년 부터 지원이 중단된다는 점은 알고 있었으나, artic fox와 무슨 연관이 있는건지 잘 모르겠다. 찾아봤지만 내가 대충 찾은건지 정확한 이유는 아직 잘 모르겠다.

 

jcenter()를 다시 추가해주는 걸로도 임시 조치가 가능하지만, 꾸준히 관리가 안되고있어 최신 버전을 사용해도 maven으로 마이그레이션 되지 않은 라이브러리는 그냥 모두 지우는 것으로... 해결했다.

 

구글이나 square에서 만든 인기 라이브러리들은 앱 개발 메타(?)에 맞춰 관리가 잘 되고 있고 IDE에서 최신 버전 알림을 줘서 이런 문제를 겪을 일이 없었다. 개인 앱 같은 경우엔 아무래도 내가 만들기 귀찮은 UI 등을 개인 제작 라이브러리로 많이 떼우고 2019~2020년 이후로 라이브러리 버전 업데이트를 잘 안해둔게 문제였다. 배포한지 오래된 앱은 기존 코드에서 라이브러리들을 떼어내느라 고생 고생 했다.

 

만약 비슷한 문제를 겪고 있는데 라이브러리 의존성이 너무 커 단기간에 수정이 안될것 같다면 그냥 안드로이드 스튜디오 버전을 롤백하는게 빠를 것이다. 앞으로는 번거롭더라도 직접 구현해야 겠다.