当我运行一个react-native项目时,我得到一个错误,没有bundle URL,但我不知道我做了什么错误,我很困惑。


当前回答

如错误信息所示:

同意Xcode/iOS许可证需要管理员权限,请运行"sudo xcodebuild -license",然后重试此命令。

执行以下命令成功:

sudo xcodebuild -license

其他回答

对于我的用例,我必须删除node_modules目录并运行npm install。

$ rm -rf node_modules   (make sure you're in the ios project directory)
$ npm install

如果你得到错误“dyld: Library not loaded: /usr/local/opt/icu4c/lib/libicui18n.58。Dylib”,执行以下操作:

$ brew uninstall --force node --ignore-dependencies node
$ brew uninstall icu4c --ignore-dependencies icu4c
$ brew install icu4c
$ brew unlink icu4c && brew link icu4c --force
$ brew install node

$ npm install

我们通过删除构建脚本中的SKIP_BUNDLING选项来解决这个问题,RN文档建议添加该选项来加快调试构建。真正的修复(为了我们的原因)包含在RN 0.57中:

https://github.com/facebook/react-native/issues/20553

只需在终端react-native启动:

cd your react native app directory/ react-native start 

它将启动打包器,现在不要关闭这个终端窗口,在另一个终端窗口运行你的项目。这是我唯一想要的,让它正常工作。

在重新启动我的mac后,我也遇到过这种情况。当你在模拟器上运行应用程序时,会打开一个launchPackager终端窗口。我关闭了该窗口并终止了进程(我也关闭了模拟器),然后再次运行react-native run-ios,一切正常。

在我的情况下,我不小心从Xcode的构建阶段删除了这个脚本。

所以,一定要有这个脚本。如果没有,只需点击“+”&选择“新建运行脚本阶段”,然后粘贴以下代码。

export NODE_BINARY=node
../node_modules/react-native/scripts/react-native-xcode.sh