Android Studio 构建错误
Posted
技术标签:
【中文标题】Android Studio 构建错误【英文标题】:Android Studio build Errors 【发布时间】:2014-05-08 09:38:10 【问题描述】:我一直在尝试分配来解决这个问题。我不知道该怎么做,当我想调试项目时遇到以下输出错误。
Execution failed for task ':inspectoratecalculator:dexDebug'.
> com.android.ide.common.internal.LoggedErrorException: Failed to run command:
C:\Users\FlikFlak\AppData\Local\Android\android-studio\sdk\build-tools\android-4.4.2\dx.bat --dex --output
C:\Users\FlikFlak\AndroidStudioProjects\Inspectorate\inspectoratecalculator\build\dex\debug
C:\Users\FlikFlak\AndroidStudioProjects\Inspectorate\inspectoratecalculator\build\classes\debug
C:\Users\FlikFlak\AndroidStudioProjects\Inspectorate\inspectoratecalculator\build\dependency-cache\debug
C:\Users\FlikFlak\AndroidStudioProjects\Inspectorate\inspectoratecalculator\build\pre-dexed\debug\android-support-v4-9fdb020c999e0f186e4aef883e8a4b8676e1e3ac.jar
C:\Users\FlikFlak\AndroidStudioProjects\Inspectorate\inspectoratecalculator\build\pre-dexed\debug\classes-3cbf09a1ad548c6398f541ca3aae99491954a4cd.jar
C:\Users\FlikFlak\AndroidStudioProjects\Inspectorate\inspectoratecalculator\build\pre-dexed\debug\support-v4-19.1.0-ce3af6ab4e02f6c952693d6706242484504a4302.jar
Error Code:
2
Output:
UNEXPECTED TOP-LEVEL EXCEPTION:
com.android.dex.DexException: Multiple dex files define Landroid/support/v4/accessibilityservice/AccessibilityServiceInfoCompat$AccessibilityServiceInfoVersionImpl;
at com.android.dx.merge.DexMerger.readSortableTypes(DexMerger.java:594)
at com.android.dx.merge.DexMerger.getSortedTypes(DexMerger.java:552)
at com.android.dx.merge.DexMerger.mergeClassDefs(DexMerger.java:533)
at com.android.dx.merge.DexMerger.mergeDexes(DexMerger.java:170)
at com.android.dx.merge.DexMerger.merge(DexMerger.java:188)
at com.android.dx.command.dexer.Main.mergeLibraryDexBuffers(Main.java:439)
at com.android.dx.command.dexer.Main.runMonoDex(Main.java:287)
at com.android.dx.command.dexer.Main.run(Main.java:230)
at com.android.dx.command.dexer.Main.main(Main.java:199)
at com.android.dx.command.Main.main(Main.java:103)
----------------------BUILD.GRADLE---- -------------------------------------------
apply plugin: 'android'
configurations
all*.exclude group: 'com.android.support', module: 'support-v4'
android
compileSdkVersion 19
buildToolsVersion "19.0.3"
defaultConfig
minSdkVersion 8
targetSdkVersion 19
versionCode 1
versionName "1.0"
buildTypes
release
runProguard false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
dependencies
compile 'com.android.support:appcompat-v7:+'
compile fileTree(dir: 'libs', include: ['*.jar'])
【问题讨论】:
发布应用模块的 build.gradle 文件。 无论何时使用 android 支持库,都不要将其作为 JAR 包含,而是在 Module Preferences > dependencies > libraries 中选择“Android Support Library” 我在上面添加了built.gradle。我已经尝试向它添加一些代码并尝试删除一些,但没有成功。 【参考方案1】:如@rupps 所述,从您的项目/模块 jar 目录中删除 v4 JAR 文件。还要从配置中删除您的“排除”部分。因为您使用的是 appcompat-v7 依赖项,您将通过 Maven 自动获取 v4 支持库。
【讨论】:
【参考方案2】:这可能是因为您在构建项目期间多次引用了相同的 jar,可能是该 jar 已包含其他模块或库模块。请仔细检查并确保此情况不存在。
我们之前也遇到过这种问题。
【讨论】:
【参考方案3】:我不确定你和我有同样的问题,但我的问题是我使用 JDK 1.8 编译代码,android dx
工具不支持。
修复方法是在 Project 的 Module Settings
中将 SDK 路径从 1.8 更改为 1.7 JDK。
Mac 中的详细配置请参考: https://***.com/a/24680375/1043032
【讨论】:
以上是关于Android Studio 构建错误的主要内容,如果未能解决你的问题,请参考以下文章
如何修复 Windows 10 上的 Android Studio adb 错误?
如何在 Xamarin (Visual Studio) 中构建 XAP 文件
Android Studio 3.6.3 - 拍照时相机错误:打开失败:ENOENT(没有这样的文件或目录)
ExtAudioRecorder:“写入失败:EBADF(错误文件描述符)”将音频录制到 WAV 文件 - Android Studio