在构建NS + Vue应用程序时,发生以下错误-
Execution failed for task ':app:transformDexArchiveWithExternalLibsDexMergerForDebug'.
> com.android.builder.dexing.DexArchiveMergerException: Error while merging dex archives
错误是因为.dex文件中方法引用的数量不能超过64K。 错误也指向https://developer.android.com/tools/building/multidex.html
处的解决方案此解决方案建议为具有超过64K方法的应用程序启用multidex,即在multiDexEnabled true
中添加build.gradle
,以解决错误。
在NativeScript中,build.gradle
位于platforms/
中,因此每当我用tns platform clean
清理平台或删除platforms/
时,都必须再次在其中添加multiDexEnabled true
build.gradle
。
对此有永久解决方案吗?
答案 0 :(得分:1)
在build.gradle
中使用platforms/
,而不是app.gradle
中的App_Resources/Android
。
在multiDexEnabled true
文件的android.defaultConfig
内添加app.gradle
,此操作将持续存在,并且不会随着tns platform clean
或删除platforms/
而改变
答案 1 :(得分:0)
编辑app\App_Resources\Android\app.gradle
添加行 multiDexEnabled true
android {
defaultConfig {
generatedDensities = []
multiDexEnabled true
applicationId = "com.your.app"
}
aaptOptions {
additionalParameters "--no-version-vectors"
}
}
然后删除文件夹platforms/
和
重新运行您的应用!