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:\Users\Administrator\AppData\Local\Android\Sdk\cmake\3.6.4111459\bin\cmake.exe with arguments {-HC:\Users\Administrator\AndroidStudioProjects\WatermelonKnows\app -BC:\Users\Administrator\AndroidStudioProjects\WatermelonKnows\app.externalNativeBuild\cmake\debug\armeabi-v7a -DANDROID_ABI=armeabi-v7a
Android Jni开发,报com.android.ide.common.process.ProcessException: Error configuring 错误解决方案的更多相关文章
- 高德地图Demo运行报错 com.android.ide.common.process.ProcessException: Failed to execute aapt
最近由于有需求去做导航方面的Android开发,很是无奈,以前也的确是没有搞过,领导开大会当着所有人的面说这是给我分配的第一个工作,无论如何要做好,突然间感觉压力好大,自己已经多年没有敲过代码,而且A ...
- ionic 打包 报错Execution failed for task ':processDebugResources'. > com.android.ide.common.process.ProcessException: Failed to execute aapt
在platform --> android目录下找到build.gradle文件,打开并在def promptForReleaseKeyPassword() {...}函数前加入以下内容: 完整 ...
- com.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException: Process 'command ' finished with non-zero exit value 1
Error:Execution failed for task ':lenovoAlbum:processReleaseResources'. > com.android.ide.common. ...
- java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException 的解决办法之一
在查看别人的代码的时候,遇到了把工程导入到 Android Studio ,报:ExecutionException: com.android.ide.common.process.ProcessEx ...
- Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException总结
最新项目中遇到了 Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.Proces ...
- Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException
异常Log: Error:Execution failed for task ‘:app:dexDebug’. > com.android.ide.common.process.ProcessE ...
- Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessException
异常Log: Error:Execution failed for task ':app:dexDebug'. > com.android.ide.common.process.ProcessE ...
- om.android.ide.common.process.ProcessException: org.gradle.process.internal.ExecException
Error:Execution failed for task ':app:dexDebug'.> com.android.ide.common.process.ProcessException ...
- Error:Execution failed for task ':app:transformClassesWithDexForDebug'. > com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.Exec
Error:Execution failed for task ':app:transformClassesWithDexForDebug'.> com.android.build.api.tr ...
随机推荐
- C++学习笔记2_函数.函数指针.函数模板
1. 内联函数void printAB(int a,int b){ cout<<(a)<<(b)<<endl;}int main(void){ for(int i= ...
- [Hadoop]HDFS机架感知策略
HDFS NameNode对文件块复制相关所有事物负责,它周期性接受来自于DataNode的HeartBeat和BlockReport信息,HDFS文件块副本的放置对于系统整体的可靠性和性能有关键性影 ...
- NOIP模拟18 T2
不知道为什么很多人拒绝这题打搜索...其实搜索在充分剪枝后时间是非常优秀的,不管数据怎样基本都可跑出 首先一个显然结论:对于某种状态,他抓到的小精灵一定是一个连续的区间. 因此我们可以枚举这个区间的左 ...
- Python文字转换语音,让你的文字会「说话」,抠脚大汉秒变撒娇萌妹
作者 | pk 哥 来源公众号 | Python知识圈(ID:PythonCircle) APP 也有文字转换为语音的功能,虽然听起来很别扭,但是基本能解决长辈们看不清文字或者眼睛疲劳,通过文字转换为 ...
- 使用Typescript重构axios(十九)——请求取消功能:实现第二种使用方式
0. 系列文章 1.使用Typescript重构axios(一)--写在最前面 2.使用Typescript重构axios(二)--项目起手,跑通流程 3.使用Typescript重构axios(三) ...
- python接口测试-数据驱动-DDT
DDT是python的第三方库,全名称为:Data-Driven/Decorated Tests. ddt安装 通过pip安装ddt模块,安装Python后,Python自带pip功能包 切换到Pyt ...
- Apache httpd 2.4.27开启GZIP压缩功能
转载自素文宅博客:https://blog.yoodb.com/yoodb/article/detail/1373 HTTP协议上的GZIP编码是一种用来改进WEB应用程序性能的文件压缩算法,现在的应 ...
- 深入理解计算机系统 第二章 信息的表示和处理 part1
欣哥划的重点: 第二章比较难,建议至少掌握下面几个知识点: 1. 字节顺序 : 大端和小端 2. 运行 图2-24, 图2-25程序 show-bytes.c 观察结果,看看有什么问题 3. 理解布尔 ...
- BASH 编程之变量高级篇
内部变量 • $$与$BASHPID都代表着执行程序的进程 ID,我们可以通过 echo 打印,并用 ps 指令检查得到相同的进程 ID [root@oracle ~]# echo $BASHPID ...
- Python数据可视化之matplotlib
常用模块导入 import numpy as np import matplotlib import matplotlib.mlab as mlab import matplotlib.pyplot ...