当前位置: 首页 > 面试题库 >

Android Studio:超出预期的最高级别:

宗政功
2023-03-14
问题内容

我该如何解决这个错误

错误:任务’:app:dexDebug’的执行失败。com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:处理’command’/Library/Java/JavaVirtualMachines/jdk1.7.0_67.jdk/Contents/Home/bin/java’‘完成非零退出值2

App Build.gradle

apply plugin: 'com.android.application'

android {
compileSdkVersion 22
buildToolsVersion "22.0.1"


packagingOptions {
    exclude 'META-INF/DEPENDENCIES'
    exclude 'META-INF/ASL2.0'
    exclude 'META-INF/NOTICE'
    exclude 'META-INF/NOTICE.txt'
    exclude 'META-INF/LICENSE'
    exclude 'META-INF/LICENSE.txt'
    exclude 'META-INF/license.txt'
    exclude 'META-INF/notice.txt'
}

defaultConfig {
    applicationId "com.app"
    minSdkVersion 10
    targetSdkVersion 22
    versionCode 1
    versionName "1.0"
}

buildTypes {
    release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {

compile 'com.android.support:appcompat-v7:22.1.1' // Do NOT use 22.2.0 even it is newer one. It reported to cause some problems with other dependencies.
compile fileTree(dir: 'libs', include: '*.jar')
compile('com.google.android.gms:play-services:7.5.+')
        {
            exclude module: 'support-v4'
        }
compile group:'com.octo.android.robospice', name:'robospice-spring-android', version:'1.4.7'

compile 'com.octo.android.robospice:robospice-spring-android:1.4.7'

compile group:'org.codehaus.jackson', name:'jackson-mapper-asl', version:'1.9.11'

compile 'com.fasterxml.jackson.core:jackson-databind:2.2.2'

compile 'com.fasterxml.jackson.core:jackson-annotations:2.2.2'

compile 'com.fasterxml.jackson.core:jackson-core:2.2.2'

compile 'com.google.code.gson:gson:2.2.4'

compile 'com.octo.android.robospice:robospice-ormlite:1.4.6'

compile('org.simpleframework:simple-xml:2.7.1') {
//        exclude module: 'xpp3'
//        exclude group: 'stax'
    exclude group: 'xpp3', module: 'xpp3'
    exclude group: 'stax', module: 'stax'
    exclude group: 'stax', module: 'stax-api'
}

}

项目摇篮

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
repositories {
    jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle:1.2.3'

    // NOTE: Do not place your application dependencies here; they belong
    // in the individual module build.gradle files
}
}

allprojects {
repositories {
    jcenter()
}
}

Android Mainfest

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.app" >

<!-- Permission - Internet Connect -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="android.permission.USE_CREDENTIALS" />

<!-- Permission - Location - GPS Service -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

<!-- Network State Permissions -->
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />

<!-- Call Phone Permissions -->
<uses-permission android:name="android.permission.CALL_PHONE" />

<application
    android:name=".app.AppHelper"
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme">

    <service
        android:name="com.octo.android.robospice.Jackson2SpringAndroidSpiceService"
        android:exported="false" />

    <meta-data
        android:name="com.google.android.gms.version"
        android:value="@integer/google_play_services_version" />

    <meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="AIzaSyCU__5jhNC-QaU9tXNpr7ikPio3km1UYe8" />

    <activity
        android:name=".ui.splash.SplashActivity"
        android:label="@string/app_name"
        android:noHistory="true"
        android:screenOrientation="portrait"
        android:theme="@style/AppTheme">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <activity
        android:name=".ui.base.BaseDrawerFragmentActivity"
        android:configChanges="locale"
        android:label=""
        android:launchMode="singleTask"
        android:screenOrientation="portrait"
        android:theme="@style/AppTheme">
    </activity>

</application>

Libs文件夹现在不存在Libs文件夹


问题答案:

欢迎。您正处于Android gradle地狱的第一步。

  1. 将SDK Manager中的Android SDK组件更新为最新组件,包括Extra> Google Repository(建议在Extra中添加几乎所有组件)。

  2. 让我们清理当前文件。

    • AndroidManifest.xml :删除<uses-sdk ... />行。因为gradle文件已经定义了它,所以它是多余的。

    • Build.gradle :注释所有compile files('libs/xxxxxxx.jar')行。第一行将compile fileTree(dir: 'libs', include: ['*.jar'])包含文件libs夹中的所有jar文件。并且,compilehtml" target="_blank">maven存储库使用而不是jar文件,以保持依赖关系的最新状态。

例如,SimpleXML的存储库ID如下。将代码放在该compile fileTree(dir: 'libs', include: ['*.jar'])行的下方,并在libs文件夹中删除“ simple-xml-2.7.1.jar”文件。

compile('org.simpleframework:simple-xml:2.7.1') {
    exclude module: 'stax'
    exclude module: 'stax-api'
    exclude module: 'xpp3'
}

同样,在libs文件夹中找到每个jar文件的存储库ID,并将其替换为第一compile fileTree(dir: 'libs', include: ['*.jar'])行下面的内容。仅使无法在Maven存储库中找到的jar文件保留在libs文件夹中。

最后,删除proguardFiles行。您需要找到并解决一般情况下的问题,然后再应用程序。

  1. 将buildToolsVersion和compileSdkVersion的版本设置为最新版本。

我今天的建议如下
((将来有人看到此帖子时,数字可能会有所不同)

android {
    compileSdkVersion 22
    buildToolsVersion '22.0.1'

    dexOptions {
        preDexLibraries = false
        javaMaxHeapSize "2g"
    }
    defaultConfig {
        ...
        multiDexEnabled = false
    }
    lintOptions {
        abortOnError false
        disable 'InvalidPackage'
    }

    ...
}


dependencies {
    compile 'com.android.support:appcompat-v7:22.1.1' // Do NOT use 22.2.0 even it is newer one. It reported to cause some problems with other dependencies.
    compile fileTree(dir: 'libs', include: '*.jar')
    compile('com.google.android.gms:play-services-gcm:7.5.+')
        {
            exclude module: 'support-v4'
        }
}
  1. gradle assembleDebug再次命令。(对于Windows,为gradlew assembleDebug

  2. 如果再次失败,请尝试查找并修复依赖项版本冲突问题。您可能会exclude module: ...在我的代码中看到。这些解决了冲突问题。



 类似资料:
  • 问题内容: 今天,我面临着一个巨大的错误,该错误使我无法在手机上运行示例项目。 当Android Studio构建项目时,它首先显示以下目标: 在构建过程中有许多这样的日志语句。但是,他们总是停滞不前。对于,我似乎从未收到过日志声明。 而是,跟着此错误: 现在有许多这样的错误。它们甚至出现在v4支持库中的类上,这确实令人困惑。 最后,这些错误以新的语句结尾: 我不确定它们是否适用于我的情况。我什至

  • 我试图理解我的意外行为: 容器中有一个最大高度为100%的元素,该容器也使用了最大高度,但意外的是,子元素溢出了父元素: 测试用例:http://jsfiddle.net/bq4Wu/16/ 但是,如果为父级指定了明确的高度,则这是固定的: 测试用例:http://jsfiddle.net/bq4Wu/17/ 有人知道第一个例子中孩子为什么不尊重父母的最大身高吗?为什么需要明确的高度?

  • 回顾第十章 “生命周期与引用有效性” 部分,我们学习了怎样使用生命周期参数注解引用来帮助 Rust 理解不同引用的生命周期如何相互联系。我们理解了每一个引用都有生命周期,不过大部分情况 Rust 允许我们省略生命周期。这里我们会看到三个还未涉及到的生命周期高级特征: 生命周期子类型(lifetime subtyping),一个确保某个生命周期长于另一个生命周期的方式 生命周期 bound(life

  • 英文中形容词有原级、比较级、最高级之分。翻译最高级的常见做法就是在之前加上“最”:best就是“最好”,worst就是“最糟”,highest就是“最高”,lowest就是“最低”……总之离不开“最”字。 这种现象正常吗?著名翻译家思果先生曾提出,最高级不一定都要翻译成“最xx”,因为中文里“最”往往是唯一,而英文的最高级则可以加one of…之类的限定,“最xx之一”的说法,多少有点名不正、言不

  • 我怎么可能得到这个信息?这没有任何意义。我正在使用

  • 假设我有一个Hazelcast映射,它在配置文件中定义了86400秒的TTL,在初始化映射时使用。 但是,我在代码中观察到在map中添加条目时(使用map.put())-还会为所有单个值传递另一个TTL。 关键级别的TTL会被认为是高级的,而TTL和map级别会被忽略吗?