解决JNI调试报错:No symbol directories found
Posted 杰嗒嗒的阿杰
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解决JNI调试报错:No symbol directories found相关的知识,希望对你有一定的参考价值。
项目从AS 2.3迁移到AS 3.0编译后,发现无法进行调试。在控制台中输出下面信息:
Attention! No symbol directories found - please check your native debug configuration
在网上搜了一下资料,有人提出了下面的解决方案:
- 打开app/build.gradle文件
- 在
dependencies
标签中加入下面的设置:
releaseCompile project(path: ':youModuleName', configuration: 'release')
debugCompile project(path: ':youModuleName', configuration: 'debug')
- 然后打开你的module/build.gradle文件
- 在
android
标识中加入publishNonDefault true
试验了一下,提示报错:
Unable to resolve dependency for ‘:app@debug/compileClasspath’: Could not resolve project :xxxxx.
貌似是说找不到项目以来的debug配置,继续查找资料,有人说依赖和被依赖的module/build.gradle中需要设置buildTypes
并且里面必须包含你所设置的配置项,如:
buildTypes
debug ...
release ...
但是我的项目中已经配置该项信息了,最后,经过不懈努力,找到了适合自己的方法:
- 首先app/build.gradle文件的
dependencies
标签中要配置debugCompile project(':youModuleName')
注:这里不设置configuration参数
- 然后module/build.gradle文件的
android
标签中加入publishNonDefault true
- 打开moudle的iml文件,找到
<facet type="native-android-gradle" name="Native-Android-Gradle">
,看一下它的子节点:
<configuration>
<option name="SELECTED_BUILD_VARIANT" value="debug" />
</configuration>
如果SELECTED_BUILD_VARIANT
的value
值不是debug
,要改成debug
。
4. 然后对项目进行debug,OK!能够断点了!
以上是关于解决JNI调试报错:No symbol directories found的主要内容,如果未能解决你的问题,请参考以下文章
Nginx报错:nginx: [emerg] open() “/usr/local/nginx/../conf/nginx.conf“ failed (2: No such file or direc
gdb 调试中No symbol “***” in current context解决方法
005android初级篇之jni 一个简单的报错No implementation found for
jni/ndk问题 :引用so库报错: java.lang.UnsatisfiedLinkError: No implementation found for
解决nginx: [error] open() "/usr/local/nginx/logs/nginx.pid" failed (2: No such file or direc