일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 멤버변수
- rxjava disposable
- 안드로이드 라이선스 종류
- 서비스 vs 쓰레드
- 2022 플러터 안드로이드 스튜디오
- ANR이란
- 객체
- android ar 개발
- 2022 플러터 설치
- jvm 작동 원리
- 서비스 쓰레드 차이
- 안드로이드 라이선스
- rxjava hot observable
- 안드로이드 유닛테스트란
- ar vr 차이
- 큐 자바 코드
- 안드로이드 유닛 테스트 예시
- rxjava cold observable
- 안드로이드 os 구조
- android retrofit login
- 클래스
- 안드로이드 레트로핏 crud
- 스택 큐 차이
- 안드로이드 레트로핏 사용법
- 스택 자바 코드
- 안드로이드 유닛 테스트
- jvm이란
- 플러터 설치 2022
- 자바 다형성
- Rxjava Observable
- Today
- Total
나만을 위한 블로그
[Android] 엑셀 모듈 설치 후 삭제하며 했던 행동들 본문
안드로이드 앱에서 엑셀 파일을 만들고 SD 카드에 저장시키는 역할을 하는 POI 모듈이란 게 있다.
이걸 설치하다가 3.1 버전과 4.x 버전을 같이 깔아버려서 아래의 에러가 떴다.
Duplicate class org.apache.poi.EmptyFileException found in modules
그러고는 앱 빌드도 안됐다.
순간 ㅈ됨을 감지하고 얼른 복구를 시도했다. 30분을 삽질한 결과 앱은 다시 정상적으로 빌드됐다.
나중에도 이런 일이 있을 것 같아서 내가 한 짓거리들을 기록해둔다.
0. 먼저 진정부터 한다. 급하게 마음 먹는다고 아무것도 해결되지 않는다.
1. File > Project Structure > Modules 탭 클릭 후 모듈들 삭제 : 경고창이 하나 나오는데 정말 지울거냐는 내용의 경고창이다. 그냥 OK 눌러서 삭제한다. 만약 다른 문장이라면 읽어보고 구글링하자
2. Dependencies 탭 클릭 후 마찬가지로 모듈들 삭제 : 여기서도 깔끔하게 모듈들을 삭제한다.
3. build.gradle(Module:poi-ooxml~~) 파일을 열고 artifacts.add("default", file('poi-ooxml-schemas-3.15.jar')) 삭제 : 아예 POI 관련된 모든 모듈들을 싹 다 삭제해버리려 했기 때문에 POI가 들어간 줄은 전부 삭제했다.
4. settings.gradle(Project Settings)에서 include ':app'만 남기고 나머지 전부 삭제 : 마찬가지로 POI 들어간 줄들은 전부 삭제했다. 저것만 남기는 이유는 저 줄까지 지워버리면 해당 파일에 아무 코드도 남지 않는데, 그렇게 되면 파일 탐색기에서 Android 탭이 사라져버린다!!
5. 윈도우 폴더 탐색기에서 해당 프로젝트 폴더 > .idea\libraries 경로에 있는 POI 관련 모듈들 전부 삭제 : POI는 아예 씨를 말릴 것이다.
혹시 모르니 해당 프로젝트 폴더 안에서 poi를 검색하고, 관련된 것들이 있다면 그것들도 전부 지워준다.
내 경우는 이렇게까지 하고 나서야 앱에서 POI라는 것들이 전부 사라졌다. 이렇게 하고 앱을 빌드하니 몇 분 정도 걸렸지만 앱이 정상적으로 빌드되는 걸 확인했다. 모든 기능들도 정상적으로 작동했다.
평소에 새로운 기능 실험하거나 공부할 때마다 새로운 프로젝트를 파서 그 안에서 하곤 했는데 어쩌다 실제 앱에 넣어버려서 이걸 복구하느라 진땀뺐다.
'Android' 카테고리의 다른 글
[Android] 버튼 하나로 레이아웃 나타나게 하거나 사라지게 하는 법 (0) | 2020.07.13 |
---|---|
[Android] 리사이클러뷰 아이템의 position 값을 액티비티에서 알아내고 인텐트로 넘기는 방법 (0) | 2020.07.10 |
[Android] Volley로 서버에서 받아온 데이터를 막대 그래프로 표시하기 (0) | 2020.07.09 |
[Android] 리사이클러뷰 사용 중 android.content.res.Resources$NotFoundException: String resource ID #0x8 에러 해결 (0) | 2020.07.09 |
[Android] 화면에 생성한 AR core 객체와 ArFragment 화면을 함께 캡쳐하는 법 (0) | 2020.07.03 |