안드로이드 개발 팁 #18 - 오래된 프로젝트의 build.gradle 파일 수정
2016년엔가 만들어 두었던 안드로이드 샘플 프로젝트들이 여럿 있는데요. 그 중 하나를 수정하려고 했습니다. 그런데 build.gradle 파일이 오래되었기 때문에 프로젝트를 로딩하자마자 이런 저런 오류들이 발생했습니다. 이번 포스트에서는 오래된 build.gradle 파일로부터 발생한 오류는 무엇인지, 이들을 어떻게 해결하는지를 간단히 정리해 봅니다.
프로젝트의 build.gradle 파일 수정
수정한 내용은 다음과 같습니다.
- Android Gradle Plugin Version을 7.2.1로 올림 (예전 버전: 1.5.0)
- respositories 블록들에 google() 추가
예
buildscript {
repositories {
google() // 추가한 코드
jcenter()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.2.1' // 1.5.0에서 7.2.1로 수정
// NOTE: Do not place your application dependencies here; they belong
// in the individual module build.gradle files
}
}
allprojects {
repositories {
google() // 추가한 코드
jcenter()
}
}
task clean(type: Delete) {
delete rootProject.buildDir
}
gradle-wrapper.properties 파일 수정
수정 내용은 다음과 같습니다.
- Gradle 버전 수정: 2.8.0에서 7.3.3으로
예
distributionBase=GRADLE_USER_HOME
distributionUrl=https\://services.gradle.org/distributions/gradle-7.3.3-bin.zip
distributionPath=wrapper/dists
zipStorePath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
app 모듈의 build.gradle 파일 수정
수정 내용은 다음과 같습니다.
dependencies 블록 안에서 작성된 단어들을 다음과 같이 변경
- compile: implementation으로 변경
- testCompile: testImplementation으로 변경
예
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
testImplementation 'junit:junit:4.12'
implementation 'com.android.support:appcompat-v7:23.1.1'
}
마치며...
스팀 앱 개발기를 작성하고 있지만, 오늘처럼 본업과 관련된 안드로이드 앱 개발 이야기도 한번씩 작성하고 있습니다. 사이드 프로젝트도 좋지만, 본업이 가장 중요하니까요. 본업에서 필요한 학습들은 빨리 마치고, 개인 앱 개발도 계속 할 수 있으면 좋겠습니다. 이것으로 이번 포스트도 마칩니다.
지난 안드로이드 개발 팁
- #17 - 뷰 바인딩 적용된 프래그먼트에 데이터 바인딩 적용 후 빌드시 발생하는 오류
- #16 - 특정 일이 속하는 주의 모든 날짜를 배열로 구하는 방법
- #15 - RecyclerView에 리스트를 로딩한 후 처리할 일 작성
- #14 - RecyclerView 뷰에서 항목 클릭시 뷰가 깜빡이는 문제
- #13 - 공통으로 사용할 색상 리소스 만들고 뷰에 적용
- #12 - 코틀린 언어 변환시 추가로 수정할 build.gradle 파일들
- #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.
