简体   繁体   English

Android Studio:新的gradle构建NDK示例应用程序错误

[英]Android Studio: New gradle build NDK sample app error

I build sample project MoreTeapots from https://github.com/googlesamples/android-ndk and get errors 我从https://github.com/googlesamples/android-ndk构建示例项目MoreTeapots并获取错误

Information:Gradle tasks [:app:assembleAllDebug] :app:copyArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer :app:createArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup :app:compileArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC :app:compileArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp :app:linkArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibrary :app:stripSymbolsArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibrary :app:arm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibrary :app:copyArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer :app:createArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup :app:compileArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC :app:compileArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp :app:linkArmeabi-v7aDebugAllMoreTeapotsNativeActiv 资料:摇篮任务[:应用程序:assembleAllDebug]:应用程序:copyArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer:应用:createArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup:应用:compileArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC:应用:compileArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp:应用:linkArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibrary:应用:stripSymbolsArm64-v8aDebugAllMoreTeapotsNativeActivitySharedLibrary:应用:arm64 -v8aDebugAllMoreTeapotsNativeActivitySharedLibrary:应用:copyArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer:应用:createArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup:应用:compileArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC:应用:compileArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp:应用:linkArmeabi-v7aDebugAllMoreTeapotsNativeActiv itySharedLibrary :app:stripSymbolsArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibrary :app:armeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibrary :app:copyArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer :app:createArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup :app:compileArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC :app:compileArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp :app:linkArmeabiDebugAllMoreTeapotsNativeActivitySharedLibrary :app:stripSymbolsArmeabiDebugAllMoreTeapotsNativeActivitySharedLibrary :app:armeabiDebugAllMoreTeapotsNativeActivitySharedLibrary :app:preBuild UP-TO-DATE :app:preAllDebugBuild UP-TO-DATE :app:checkAllDebugManifest :app:prepareAllDebugDependencies :app:compileAllDebugAidl UP-TO-DATE :app:compileAllDebugRenderscript UP-TO-DATE :app:generateAllDebugBuildConfig UP-TO-DATE :app:generateAllDebugAssets UP-TO-DATE :app:mergeAllDebugAssets UP-TO-D itySharedLibrary:应用:stripSymbolsArmeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibrary:应用:armeabi-v7aDebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:copyArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer:应用程序:createArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup:应用程序:compileArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC:应用程序:compileArmeabiDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp:应用程序:linkArmeabiDebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:stripSymbolsArmeabiDebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:armeabiDebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:预生成UP-TO-DATE :app:preAllDebugBuild UP-TO-DATE:app:checkAllDebugManifest:app:prepareAllDebugDependencies:app:compileAllDebugAidl UP-TO-DATE:app:compileAllDebugRenderscript UP-TO-DATE:app:generateAllDebugBuildConfig UP-TO-DATE:app:generateAllDebugAssets UP- TO-DATE:app:mergeAllDebugAssets UP-TO-D ATE :app:generateAllDebugResValues UP-TO-DATE :app:generateAllDebugResources UP-TO-DATE :app:mergeAllDebugResources UP-TO-DATE :app:processAllDebugManifest UP-TO-DATE :app:processAllDebugResources UP-TO-DATE :app:generateAllDebugSources UP-TO-DATE :app:processAllDebugJavaRes UP-TO-DATE :app:compileAllDebugJavaWithJavac Note: C:\\Users\\Cuong\\Downloads\\MoreTeapots\\app\\src\\main\\java\\com\\sample\\moreteapots\\MoreTeapotsNativeActivity.java uses or overrides a deprecated API. ATE:app:generateAllDebugResValues UP-TO-DATE:app:generateAllDebugResources UP-TO-DATE:app:mergeAllDebugResources UP-TO-DATE:app:processAllDebugManifest UP-TO-DATE:app:processAllDebugResources UP-TO-DATE:app:generateAllDebugSources UP-TO-DATE:app:processAllDebugJavaRes UP-TO-DATE:app:compileAllDebugJavaWithJavac注意:C:\\ Users \\ Cuong \\ Downloads \\ MoreTeapots \\ app \\ src \\ main \\ java \\ com \\ sample \\ moreteapots \\ MoreTeapotsNativeActivity.java使用或覆盖已弃用的API。 Note: Recompile with -Xlint:deprecation for details. 注意:使用-Xlint重新编译:弃用以获取详细信息。 :app:copyMips64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer :app:createMips64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup :app:compileMips64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC :app:compileMips64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp :app:linkMips64DebugAllMoreTeapotsNativeActivitySharedLibrary :app:stripSymbolsMips64DebugAllMoreTeapotsNativeActivitySharedLibrary :app:mips64DebugAllMoreTeapotsNativeActivitySharedLibrary :app:copyMipsDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer :app:createMipsDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup :app:compileMipsDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC :app:compileMipsDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp :app:linkMipsDebugAllMoreTeapotsNativeActivitySharedLibrary :app:stripSymbolsMipsDebugAllMoreTeapotsNativeActivitySharedLibrary :app:mipsDebugAllMor :应用程序:copyMips64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer:应用程序:createMips64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup:应用程序:compileMips64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC:应用程序:compileMips64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp:应用程序:linkMips64DebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:stripSymbolsMips64DebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:mips64DebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:copyMipsDebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer:应用程序:createMipsDebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup:应用程序:compileMipsDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC:应用程序:compileMipsDebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp:应用程序:linkMipsDebugAllMoreTeapotsNativeActivitySharedLibrary:应用:stripSymbolsMipsDebugAllMoreTeapotsNativeActivitySharedLibrary:app:mipsDebugAllMor eTeapotsNativeActivitySharedLibrary :app:copyX86DebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer :app:createX86DebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup :app:compileX86DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC :app:compileX86DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp :app:linkX86DebugAllMoreTeapotsNativeActivitySharedLibrary :app:stripSymbolsX86DebugAllMoreTeapotsNativeActivitySharedLibrary :app:x86DebugAllMoreTeapotsNativeActivitySharedLibrary :app:copyX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer :app:createX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup :app:compileX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC :app:compileX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp :app:linkX86_64DebugAllMoreTeapotsNativeActivitySharedLibrary :app:stripSymbolsX86_64DebugAllMoreTeapotsNativeActivitySharedL eTeapotsNativeActivitySharedLibrary:应用:copyX86DebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer:应用程序:createX86DebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup:应用程序:compileX86DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC:应用程序:compileX86DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp:应用程序:linkX86DebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:stripSymbolsX86DebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:x86DebugAllMoreTeapotsNativeActivitySharedLibrary:应用程序:copyX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbServer:应用程序:createX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryGdbsetup:应用程序:compileX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainC:应用程序:compileX86_64DebugAllMoreTeapotsNativeActivitySharedLibraryMoreTeapotsNativeActivityMainCpp:应用程序:linkX86_64DebugAllMoreTeapotsNativeActivitySharedLibrary:应用:stripSymbolsX86_64DebugAllMoreTeapotsNativeActivitySharedL ibrary :app:x86_64DebugAllMoreTeapotsNativeActivitySharedLibrary :app:compileAllDebugSources :app:preDexAllDebug :app:dexAllDebug UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/helper/NDKHelper.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/BuildConfig.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/MoreTeapotsApplication.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/MoreTeapotsNativeActivity$1.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/MoreTeapotsNativeActivity$2.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/MoreTeapotsNativeActivity$3.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/MoreTeapotsNativeActivity.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/R$attr.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/R$drawable.class ibrary:app:x86_64DebugAllMoreTeapotsNativeActivitySharedLibrary:app:compileAllDebugSources:app:preDexAllDebug:app:dexAllDebug UNEXPECTED TOP-LEVEL EXCEPTION:...在解析com / sample / helper / NDKHelper.class时出现意外顶级异常:...在解析com /时sample / moreteapots / BuildConfig.class意外的顶层例外:...在解析com / sample / moreteapots / MoreTeapotsApplication.class时出现意外的顶级异常:...同时解析com / sample / moreteapots / MoreTeapotsNativeActivity $ 1.class UNEXPECTED TOP -LEVEL EXCEPTION:...解析com / sample / moreteapots / MoreTeapotsNativeActivity $ 2.class意外顶级异常:...解析com / sample / moreteapots / MoreTeapotsNativeActivity $ 3.class意外顶级异常:...同时解析com / sample / moreteapots / MoreTeapotsNativeActivity.class意外的顶层例外:...解析com / sample / moreteapots / R $ attr.class时出现意外顶级异常:...解析com / sample / moreteapots / R时$ drawable.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/R$id.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/R$layout.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/R$string.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/R$style.class UNEXPECTED TOP-LEVEL EXCEPTION: ...while parsing com/sample/moreteapots/R.class 14 errors; 意想不到的顶级例外:......解析com / sample / moreteapots / R $ id.class意外的顶层例外:...解析com / sample / moreteapots / R $ layout.class意外的顶层例外: ...解析com / sample / moreteapots / R $ string.class意外的顶级异常:...解析com / sample / moreteapots / R $ style.class意外的顶层例外:...解析com时/sample/moreteapots/R.class 14个错误; aborting Error:Execution failed for task ':app:dexAllDebug'. 中止错误:任务':app:dexAllDebug'的执行失败。 com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command 'C:\\Program Files\\Java\\jdk1.8.0_45\\bin\\java.exe'' finished with non-zero exit value 1 Information:BUILD FAILED Information:Total time: 4 mins 1.033 secs Information:1 error Information:0 warnings Information:See complete output in console com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:进程'命令'C:\\ Program Files \\ Java \\ jdk1.8.0_45 \\ bin \\ java.exe''以非完成零退出值1信息:BUILD FAILED信息:总时间:4分钟1.033秒信息:1错误信息:0警告信息:在控制台中查看完整输出

This is guide http://tools.android.com/tech-docs/new-build-system/gradle-experimental . 这是指南http://tools.android.com/tech-docs/new-build-system/gradle-experimental Its app build.gradle 它的app build.gradle

apply plugin: 'com.android.model.application'

model {
android {
    compileSdkVersion    = 22
    buildToolsVersion    ="22.0.1"

    defaultConfig.with {
        applicationId    = "com.sample.moreteapots"
        minSdkVersion.apiLevel    = 11
        targetSdkVersion.apiLevel = 22

    }
}
android.ndk {
    moduleName ="MoreTeapotsNativeActivity"
    cppFlags   += "-I${file("src/main/jni/cpufeatures")}".toString()
    cppFlags   += "-I${file("src/main/jni/native_app_glue")}".toString()
    cppFlags   += "-I${file("src/main/jni/ndk_helper")}".toString()

    // CFlags is configured in similiar way as cppFlags
    // CFlags    += "-I${file("src/main/jni/native_app_glue")}".toString()

    ldLibs     += ["android", "EGL", "GLESv2","log"]
    stl         = "stlport_static"
}

android.sources {
    main {
        jni {
            source {
                srcDirs 'src/main/jni'
            }
        }
    }
}

android.productFlavors {
    create ("arm7") {
        ndk.abiFilters += "armeabi-v7a"
    }
    create ("arm8") {
        ndk.abiFilters += "arm64-v8a"
    }
    create ("x86-32") {
        ndk.abiFilters += "x86"
    }
    // for detailed abiFilter descriptions, refer to "Supported ABIs" @
    // https://developer.android.com/ndk/guides/abis.html#sa
    // build one including all productFlavors
    create("all")
}

} }

Its project build.gradle 它的项目build.gradle

// Top-level build file where you can add configuration options common to      all sub-projects/modules.
buildscript {
repositories {
   maven {
     url  "http://dl.bintray.com/android/android-tools"
   }
   jcenter()
}
dependencies {
    classpath 'com.android.tools.build:gradle-experimental:0.1.0'
}
}

allprojects {
repositories {
    jcenter()
}

} }

Its gradle-wrapper.properties 它的gradle-wrapper.properties

#Wed Apr 10 15:27:10 PDT 2013
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
zipStoreBase=GRADLE_USER_HOME
zipStorePath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-2.5-rc-1-bin.zip

How can I solve? 我怎么解决? Thanks. 谢谢。

UPDATE: Solved. 更新:解决了。 I add 我加

    compileOptions.with {
    sourceCompatibility = JavaVersion.VERSION_1_7
    targetCompatibility = JavaVersion.VERSION_1_7
}

to app build.gradle like 到app build.gradle就好

apply plugin: 'com.android.model.application'
model {
android {
    compileSdkVersion    = 22
    buildToolsVersion    ="22.0.1"

    defaultConfig.with {
        applicationId    = "com.sample.moreteapots"
        minSdkVersion.apiLevel    = 10
        targetSdkVersion.apiLevel = 22

    }
}
android.ndk {
    moduleName ="MoreTeapotsNativeActivity"
    cppFlags   += "-I${file("src/main/jni/cpufeatures")}".toString()
    cppFlags   += "-I${file("src/main/jni/native_app_glue")}".toString()
    cppFlags   += "-I${file("src/main/jni/ndk_helper")}".toString()

    // CFlags is configured in similiar way as cppFlags
    // CFlags    += "-I${file("src/main/jni/native_app_glue")}".toString()

    ldLibs     += ["android", "EGL", "GLESv2","log"]
    stl         = "stlport_static"
}

android.sources {
    main {
        jni {
            source {
                srcDirs 'src/main/jni'
            }
        }
    }
}

android.productFlavors {
    create ("arm7") {
        ndk.abiFilters += "armeabi-v7a"
    }
    create ("arm8") {
        ndk.abiFilters += "arm64-v8a"
    }
    create ("x86-32") {
        ndk.abiFilters += "x86"
    }
    // for detailed abiFilter descriptions, refer to "Supported ABIs" @
    // https://developer.android.com/ndk/guides/abis.html#sa
    // build one including all productFlavors
    create("all")
}
compileOptions.with {
    sourceCompatibility = JavaVersion.VERSION_1_7
    targetCompatibility = JavaVersion.VERSION_1_7
}

} }

Try this 试试这个

tasks.withType(JavaCompile) {
    sourceCompatibility = JavaVersion.VERSION_1_7
    targetCompatibility = JavaVersion.VERSION_1_7
}

Bug is submitted here https://code.google.com/p/android/issues/detail?id=179660 此处提交了错误https://code.google.com/p/android/issues/detail?id=179660

edit: append it to end of app build.gradle file outside all of sections 编辑:将其附加到所有部分之外的app build.gradle文件的末尾

Alternatively, the two lines can be added immediately following the 'apply plugin: ...' 或者,可以在'apply plugin:...'之后立即添加两行。

apply plugin: 'com.android.model.application'
sourceCompatibility = JavaVersion.VERSION_1_7
targetCompatibility = JavaVersion.VERSION_1_7

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM