zoukankan      html  css  js  c++  java
  • Android Jni开发,报com.android.ide.common.process.ProcessException: Error configuring 错误解决方案

    今天在练习JNI项目时,Android studio版本为:3.1.3,Gradle版本为4.4。由于Android studio 3.X弃用了

    android.useDeprecatedNdk=true,要求使用Cmake的方式进行库文件构建。因此,学习了Cmake

    的构建方式。

    在写完代码之后,sync时总是报错:com.android.ide.common.process.ProcessException: Error configuring,却不能给出出错的准确位置。

    Google和百度,未能找到解决方案,使用gradlew build也不能看出明显出错的方案。

    忍无可忍,按照https://developer.android.com/studio/projects/add-native-code#new-project 官网自动生成demo项目,竟然发现也会报同样的错误。(ps,clean、invalidate and restrat均无用)。考虑到可能是Android studio抽风,于是在另一台新装的电脑上构建试一下。工程拷贝过去后,发现一样。

    用新电脑的Android Studio(版本3.2.1)新建一个官方的jni demo项目,竟然..通过了!!

    于是比较两个项目的差异,除了版本外,新电脑生成的工程默认的classpath为:

    classpath 'com.android.tools.build:gradle:3.2.1'

    使用的gradle版本为4.6。旧电脑生成工程默认的classpath为:

    classpath 'com.android.tools.build:gradle:3.1.3'

    使用的gradle版本为4.4。两者使用的ndk版本均为19.0,cmake版本为3.10.2。

    于是将旧电脑的classpath和gradle更新,与新电脑的一致,sync,构建通过。

    第二个问题(见 https://github.com/googlesamples/android-ndk/issues/510):Android工程所在的目录的任何一级,不要有中文、空格等特殊符号,最好与java的命名规则保持一致,否则cmake会报错:

    C:UsersAdministratorAppDataLocalAndroidSdkcmake3.6.4111459incmake.exe with arguments {-HC:UsersAdministratorAndroidStudioProjectsWatermelonKnowsapp -BC:UsersAdministratorAndroidStudioProjectsWatermelonKnowsapp.externalNativeBuildcmakedebugarmeabi-v7a -DANDROID_ABI=armeabi-v7a 

  • 相关阅读:
    N^N hdu1060
    二叉树的所有操作
    溢出问题
    POJ1562深搜问题
    已知前序,中序,求后序
    交换a,b
    深度和广度优先搜索
    最长回文子串
    scanf
    WCF Ria Service 理解
  • 原文地址:https://www.cnblogs.com/acesui/p/10296885.html
Copyright © 2011-2022 走看看