안드로이드 개발 팁 #12 - 코틀린 언어 변환시 추가로 수정할 build.gradle 파일들
시작하며...
오래된 앱들은 자바로 작성되었구요. 때로는 자바 코드들을 코틀린으로 바꾸는 것도 고려할 필요가 있습니다. 작년에 출시했던 앱을 올해 버전으로 일부 수정하여 다시 출시해야 하는데요. 나중에 편리성을 위해 일부라도 코틀린으로 바꿔보려 합니다.
코틀린 언어 변환 후 발생한 오류
Convert Java File to Kotlin File 메뉴를 활용하여 시작 화면 담당 액티비티를 코틀린 코드로 변경해 보았습니다. 이후 추가 수정하고 테스트를 해보았으나, 아래와 같은 오류가 발생하여 시작 화면이 초반에 멈추고 말았습니다.
Caused by: java.lang.ClassNotFoundException: Didn't find class "(패키지이름 생략).SplashActivity"
해결 방법을 찾아 보니 프로젝트 및 모듈에 위치한 build.gradle 파일들을 추가로 수정해야 합니다.
코틀린 언어 변환을 위해 필요한 프로젝트의 build.gradle 파일 수정
(1) buildscript 블록 안에 코틀린 버전 추가
buildscript {
ext.kotlin_version = "1.4.32"
// ...
}
참고로 1.4.32는 2022년 4월에 생성했던 샘플 프로젝트에서 설정되었던 코틀린 버전입니다.
(2) buildscript 블록 안 dependencies 블록 안에 아래 문장 추가
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
아래 코드는 (1), (2)를 적용한 예입니다.
buildscript {
ext.kotlin_version = "1.4.32"
repositories {
jcenter()
google()
}
dependencies {
classpath 'com.android.tools.build:gradle:4.1.3'
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
코틀린 언어 변환 위해 필요한 모듈단의 build.gradle 파일 수정
파일 상단에 아래의 2개 플러그인 추가하면 됩니다.
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-kapt'
지난 안드로이드 개발 팁
- #11 - 리스트/배열로부터 찾을 원소의 위치 읽기
- #10 - 앱의 다크 모드 진입 막는 방법
- #9 - 데이터 바인딩/뷰 바인딩 사용하지 않을 경우 자체적으로 만드는 Views 클래스
- #8 - TextView에 linear gradient color 적용하기
- #7 - 다이얼 화면 연결하기 위해 Activity 클래스의 확장 메소드 작성
- #6 - 웹 브라우저를 여는 확장 메소드 작성
- #5 - HTML 적용된 TextView에서 링크 클릭은 어떻게 구현?
- #4 - RxJava의 Observable, Single 객체의 기본 설정 수행 메소드 정의하기
- #3 - 특정 화면 이동시 다른 화면 모두 닫기
- #2 - HTML 이스케이핑 적용된 문자 풀어주기
- #1 - TextView로 HTML 내용 보여주기
[광고] STEEM 개발자 커뮤니티에 참여 하시면, 다양한 혜택을 받을 수 있습니다.
Upvoted! Thank you for supporting witness @jswit.
![default.jpg](https://steemitimages.com/640x0/https://cdn.steemitimages.com/DQmNwBDPMPvL1yaKWTYF4wxyUmxWiEJgAy1WZWTJyCha5wE/jswit_comment_initial.w320.jpg)