
* 겪고 있는 문제 상황을 최대한 자세하게 작성해주세요.
* 문제 해결을 위해 어떤 시도를 해보았는지 구체적으로 함께 알려주세요.
Dex 오류가 발생했습니다. Dex 오류가 발생하는 이유가 무엇인지 궁금합니다. 아래와 같이 코드 및 에러 메시지를 해결하는 방법도 알려주시면 감사하겠습니다!
작성한 코드 및 에러 메세지
1) 작성한 코드(android 하위 build.gradle)
plugins {
id "com.android.application"
id "kotlin-android"
id "dev.flutter.flutter-gradle-plugin"
}
def localProperties = new Properties()
def localPropertiesFile = rootProject.file('local.properties')
if (localPropertiesFile.exists()) {
localPropertiesFile.withReader('UTF-8') { reader ->
localProperties.load(reader)
}
}
def flutterVersionCode = localProperties.getProperty('flutter.versionCode')
if (flutterVersionCode == null) {
flutterVersionCode = '1'
}
def flutterVersionName = localProperties.getProperty('flutter.versionName')
if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
def keystoreProperties = new Properties()
def keystorePropertiesFile = rootProject.file('key.properties')
if (keystorePropertiesFile.exists()) {
keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
}
android {
namespace "com.yujinlee.daymission"
compileSdkVersion flutter.compileSdkVersion
ndkVersion flutter.ndkVersion
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
kotlinOptions {
jvmTarget = '1.8'
}
sourceSets {
main.java.srcDirs += 'src/main/kotlin'
}
defaultConfig {
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
applicationId "com.yujinlee.daymission"
// You can update the following values to match your application needs.
// For more information, see: https://docs.flutter.dev/deployment/android#reviewing-the-gradle-build-configuration.
minSdkVersion 21
targetSdkVersion flutter.targetSdkVersion
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
multiDexEnabled true
}
signingConfigs {
release {
keyAlias keystoreProperties['keyAlias']
keyPassword keystoreProperties['keyPassword']
storeFile file(keystoreProperties['storeFile'])
storePassword keystoreProperties['storePassword']
}
}
buildTypes {
release {
signingConfig signingConfigs.release
}
}
}
flutter {
source '../..'
}
dependencies {
implementation 'com.android.support:multidex:1.0.3'
}
2) 에러 메시지(전체는 아님)
a failure occurred while executing com.android.build.gradle.internal.tasks.dexmergingworkaction > com.android.builder.dexing.dexarchivemergerexception: error while merging dex archives: the number of method references in a .dex file cannot exceed 64k.;
강의 들은 것과 별개로 추가하거나 수정해본 코드는 아래와 같습니다.
minSdkVersion 21
...
multiDexEnabled true
...
dependencies {
implementation 'com.android.support:multidex:1.0.3'
}
https://stackoverflow.com/questions/36785014/the-number-of-method-references-in-a-dex-file-cannot-exceed-64k-api-17
위 링크를 참고하여 이리저리 코드를 넣어봤는데, 맞게 한 건지 모르겠어서 애매한 상태의 코드를 첨부하게 되었습니다.
현재 상태로는 apk 파일을 만들고 있는 중이라는 메시지만 뜨고 수 시간 냅둬도 만들어지지가 않더라고요.
도와주세요...!
