You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

IntelliJ IDEA不支持C++文件,NDK应用创建问题求助

解决IntelliJ IDEA中NDK配置后无法创建C++文件、jni.h不识别的问题

我来帮你排查下这个NDK配置的问题,你遇到的情况我之前也碰到过,咱们一步步来解决:

1. 确认IDEA的项目级NDK配置(别只依赖local.properties)

有时候手动修改local.properties文件,IDEA不一定能自动识别到,建议直接在项目结构里手动指定:

  • 打开File > Project Structure(快捷键Ctrl+Alt+Shift+S)
  • 左侧面板选择SDK Location
  • 在Android NDK location处,点击文件夹图标,选择你下载好的NDK根目录,然后点击OK保存

2. 检查模块的Native构建配置

你需要确保模块的build.gradle里正确配置了Native构建脚本(CMake或ndk-build),不然IDEA不会识别C++文件目录:

如果用CMake构建:

在模块的build.gradle的android块里添加以下配置:

externalNativeBuild {
    cmake {
        path file('CMakeLists.txt') // 指向你的CMake配置文件路径
        version '3.22.1' // 这里填你匹配的CMake版本,和NDK兼容即可
    }
}

同时要确保CMakeLists.txt存在,并且正确声明了你的Native库,比如:

add_library(
             native-lib
             SHARED
             src/main/cpp/native-lib.cpp )

如果用ndk-build构建:

则配置成:

externalNativeBuild {
    ndkBuild {
        path file('Android.mk') // 指向你的Android.mk文件路径
    }
}

3. 同步项目+清理IDEA缓存

  • 点击右上角的Sync Project with Gradle Files按钮,等待Gradle同步完成
  • 如果同步后还是没效果,试试File > Invalidate Caches...,选择Invalidate and Restart,清理缓存后重启IDEA——很多时候缓存问题会导致头文件不识别、创建选项缺失的情况

4. 手动创建C++目录和文件(应急方案)

如果IDEA还是没有创建C++文件的选项,你可以手动操作:

  • 在src/main/目录下新建cpp文件夹
  • 在cpp里直接新建.cpp或.h文件
  • 再次同步Gradle,IDEA应该会自动识别这些文件,并关联NDK的头文件(包括jni.h)

另外,还要注意你的项目minSdkVersion要和NDK版本兼容,比如部分高版本NDK不支持低于21的minSdk,你可以在模块build.gradle的defaultConfig里调整:

defaultConfig {
    minSdkVersion 21
    // 其他配置...
    externalNativeBuild {
        cmake {
            abiFilters 'armeabi-v7a', 'arm64-v8a'
        }
    }
}

内容的提问来源于stack exchange,提问作者Avishek Nath

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 15:42:29