/bin/sh: /packages/flutter_tools

2022-04-15  本文已影响0人  简笑笑

flutter项目在Xcode上运行时碰到的错误

无法执行这个路径下的命令

/packages/flutter_tools/bin/xcode_backend.sh

很明显这个路径少了点东西,说明flutter项目的ios部分的配置引用有问题

那我们就查看下配置

右键显示包内容

可以在project.pbxproj文件中观察到编译时文件的的关联和配置

其中这里

shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build";

发现是少了$FLUTTER_ROOT的内容

这个配置是基于这三个文件的配置

那再次在project.pbxproj(文件大部分都是对各个文件的映射和配置基本不会错的)文件中全局搜索下XCBuildConfiguration发现

pods-Runner.debug.xconfig

配置的是pods-Runner.debug.xconfig这个文件但是我们上面三个文件中没有这个,所以问题就在这里,配置了一个不存在的文件所以找不到FLUTTER_ROOT的路径了

解决方案

直接把pods-Runner.debug.xconfig替换成Debug.xcconfig就可以

或者直接在Xcode这里修改也可以

拓展一下

这种路径问题有时候还会出现在从别人那里拷来的项目

这时候修改一下Generated.xcconfig这个文件中的FLUTTER_ROOT的路径替换成自己的flutter根目录就可以,或者通过AndroidStudio去运行一下,再用Xcode运行一般也能解决

上一篇 下一篇

猜你喜欢

热点阅读