在Android模拟器运行React Native应用时遇Ninja构建错误求助
解决React Native中
ninja: error: manifest 'build.ninja' still dirty after 100 tries错误 问题根源
从CMake警告信息可以明确:项目文件路径过长,超出了Windows系统允许的最大路径长度限制,导致React Native Reanimated的C++编译文件无法正确写入目标目录,进而触发ninja构建失败的错误。
解决方案
缩短项目存放路径
将项目从深层嵌套目录移动到根目录附近,比如把C:/Users/YourLongName/Workspace/SuperLongReactNativeProject迁移到C:/RN/MyApp,大幅减少路径总字符数,这是最直接有效的解决方式。启用Windows长路径支持
以管理员身份打开命令提示符,执行以下命令开启Windows长路径支持:reg add "HKLM\SYSTEM\CurrentControlSet\Control\FileSystem" /v LongPathsEnabled /t REG_DWORD /d 1 /f执行完成后重启电脑,系统即可支持更长的文件路径。
临时修改Reanimated的CMake配置
找到项目中node_modules/react-native-reanimated/android/CMakeLists.txt文件,在文件开头添加以下配置:set(CMAKE_OBJECT_PATH_MAX 300) set(CMAKE_BINARY_DIR "${CMAKE_CURRENT_SOURCE_DIR}/../build")该配置会增加路径长度限制并指定更短的构建输出目录,但注意升级Reanimated依赖后需要重新修改此文件,建议优先使用前两种方案。
彻底清理缓存后重新构建
执行以下命令清理所有缓存并重新安装依赖:cd android ./gradlew clean cd .. rm -rf node_modules package-lock.json npm install npm start -- --reset-cache最后重新运行Android项目:
npx react-native run-android
内容的提问来源于stack exchange,提问作者SandeepCls
相关产品推荐
相关产品推荐

