解决JNI调试报错:No symbol directories found

项目从AS 2.3迁移到AS 3.0编译后,发现无法进行调试。在控制台中输出下面信息:

Attention! No symbol directories found - please check your native debug configuration

在网上搜了一下资料,有人提出了下面的解决方案:

  1. 打开app/build.gradle文件
  2. dependencies标签中加入下面的设置:
releaseCompile project(path: ':youModuleName', configuration: 'release')
debugCompile project(path: ':youModuleName', configuration: 'debug')
  1. 然后打开你的module/build.gradle文件
  2. android标识中加入publishNonDefault true

试验了一下,提示报错:

Unable to resolve dependency for ‘:app@debug/compileClasspath’: Could not resolve project :xxxxx.

貌似是说找不到项目以来的debug配置,继续查找资料,有人说依赖和被依赖的module/build.gradle中需要设置buildTypes并且里面必须包含你所设置的配置项,如:

buildTypes{
      debug{ ... }
      release{ ... }
}

但是我的项目中已经配置该项信息了,最后,经过不懈努力,找到了适合自己的方法:

  1. 首先app/build.gradle文件的dependencies标签中要配置debugCompile project(':youModuleName')

注:这里不设置configuration参数

  1. 然后module/build.gradle文件的android标签中加入publishNonDefault true
  2. 打开moudle的iml文件,找到<facet type="native-android-gradle" name="Native-Android-Gradle">,看一下它的子节点:
<configuration>
        <option name="SELECTED_BUILD_VARIANT" value="debug" />
</configuration>

如果SELECTED_BUILD_VARIANTvalue值不是debug,要改成debug
4. 然后对项目进行debug,OK!能够断点了!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 当你在开发JNI时遇到"fatal error: iostream: No such file or directory"的错误时,这通常是因为你的编译环境缺少了iostream头文件。根据你提供的引用内容,有几种可能的解决方法。首先,你可以检查你的编译命令是否正确,确保你使用的是g++而不是gcc。其次,你可以尝试将$CC替换为$CXX,这可能会解决问题。最后,你可以检查你的编译环境是否正确配置,确保你的交叉编译工具链正确安装并进行了正确的环境配置。希望这些方法能够帮助你解决这个问题。 #### 引用[.reference_title] - *1* [jni开发的时候fatal error: iostream: No such file or directory](https://blog.csdn.net/hty1053240123/article/details/52105133)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [编译报错fatal error:No such file or directory #include <cstdlib> 和 ‘_Znwj@@GLIBCXX_3.4](https://blog.csdn.net/usstmiracle/article/details/103177201)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [说个笑话-fatal error: iostream: No such file or directory /fatal error: stdio.h: No such file or ...](https://blog.csdn.net/linglongqiongge/article/details/92023108)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值