[Android/ScrollPager] 라이브러리 배포중 생긴 문제와 해결

djawnstj·2023년 1월 14일
0

블로그 이전

몇시간 전에 안드로이드 라이브러리 배포에 대한 포스팅을 올렸다.

당연하게 인터넷에 주로 포스팅되어있는 방법대로 진행했으니 문제가 없을거라 생각했다.
하지만 역시 개발이란 생각대로 되는게 없었고.........
잘 배포가 됐나 확인을 안한채로 신나서 블로그 포스팅을 올려버린게 화근이었다.

라이브러리 의존성을 주입하고 내가만든 ScrollPager 레이아웃을 추가하려는데 보이지가 않는것이었다.
그래서 gradle sync 과정에서 문제가 생겼다 보고 로그를 확인해보니

이런 로그가 남아있었다.....

뭐가 문젠지 도저히 감이 안잡혀서 검색과 다시 만들어서 배포하고를 수없이 반복해서 놓친부분을 찾았다
이 블로그에서 jitpack에 올리면 로그 아이콘이 남는데 빨간 아이콘은 라이브러리에 문제가 있는것이라 한다.


당연히 내 라이브러리도 정상적인 업로드가 아니라는 안내를 해주고있었고, 이게 뭔지 모르는 나는 그냥 넘어갔던 것...!

저 로그를 처음 열어봤을땐 가장 마지막에 적힌

⚠️ ERROR: No build artifacts found
Expected artifacts in: $HOME/.m2/repository/ScrollPager/ScrollPager/unspecified

이 로그만 보고 검색하며 해결하려 했다.

도저히 해결이 되지 않았고 아직 gradle에 대해 잘 모르고있어 해결을 포기하려던 직전 로그 전문만 한번 보자 는 생각이 들어 찬찬히 살펴봤다.

다행히 중간에

> Task :ScrollPager:compileDebugKotlin FAILED
31 actionable tasks: 29 executed, 2 up-to-date
Picked up JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8 -Dhttps.protocols=TLSv1.2
e: Source file or directory not found: Xexplicit-api=strict

이런 로그가 적혀있었고 대충 문제를 짐작할 수 있었다

위 로그의 마지막
e: Source file or directory not found: Xexplicit-api=strict build,gradle(module level)-kotlinOptions 에 freeCompilerArgs에 추가한 접근 제어자를 명시하도록 컴파일 수준에서 체크해주는 옵션인데 오타가 있었던 것이다.

일단 주석을 해서 다시 jitpack에 올려보니

영롱하게 초록색 로그 아이콘이 나오고 옆에 Get it 이라는 버튼도 생겼다!!!
(이렇게 보니 문제가 있을때와 차이가 엄청 나는데 왜 몰랐을까!!!)

아무튼 정상적으로 의존성 주입이 되고

레이아웃도 정상적으로 만들어졌다!!

이제 기능 업데이트를 하나하나 진행하려고 한다.
이전 포스트에도 올렸지만

  1. View를 추가하면 자동으로 ScrollPager 크기에 맞게 설정됨(강제적으로)
  2. ViewGroup이 자식으로 들어오면 Exception
  3. tab layout 과 연동

이렇게 업데이트 예정이었는데 라이브러리를 주입받고 레이아웃을 올려보니 생각난게 있다

  1. 스크롤 완전 막기
  2. ScrollView를 상속받아 만든 layout 이다보니 자식으로 ViewGroup을 하나 가져야 하는데 기본적으로 자식 ViewGroup을 가지고 있기
  3. HorizontalScollPager 추가 개발

이렇게 추가적인 기능개발이 있을 예정이다.

profile
이용자가 아닌 개발자가 되자!

0개의 댓글