我正在遵循React Native官方网站上的教程。

使用以下来构建我的项目:

react-native run-ios

我得到了错误:

Found Xcode project TestProject.xcodeproj
xcrun: error: unable to find utility "instruments", not a developer   
tool or in PATH

Command failed: xcrun instruments -s
xcrun: error: unable to find utility "instruments", not a developer 
tool or in PATH

虽然,当我从.xcodeproj运行应用程序时,一切正常。

有什么建议吗?


当前回答

去Xcode

点击左上方菜单中的Xcode Xcode->首选项->位置->单击命令行选项并设置Xcode版本。

其他回答

在我的例子中,SDKROOT环境变量是错误的,它引用了旧版本的iPhoneOSxx.x.sdk。(也许这个问题会在重启后自动解决?)

您可以通过运行echo $SDKROOT来检查它是否是一个有效的路径。

我通过更新.bash_profile来修复它:

export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.2.sdk

对于在Xcode 13中遇到这种情况的任何人(比如我)来说,这是一个更新——instruments命令已经被删除了。

更新到包中的react-native的最新版本。Json文件将不再尝试使用instruments命令。

如果前面的答案对您没有帮助,那么您可能正在处理过时的react-native版本。如果你想在不升级React-Native的情况下在设备上运行应用,你必须直接从Xcode中运行应用,而不是在CLI中运行。打开<appname>。xcworkspace,在右边的下拉菜单中选择您的设备并按下“Run”图标。

Xcode截图

问题是你的Xcode版本没有在命令行工具上设置,要解决这个问题,打开Xcode>菜单>首选项>位置>这里的命令行工具选择你的Xcode版本,就是这样。

默认情况下,安装Xcode后命令行没有被选中,所以打开Xcode并进入Preferences >> Locations并设置命令行工具…

这在MAC High Sierra, Xcode Version 9.3中非常有效:

按i打开iOS模拟器…

你可以看到一个很酷的新iPhone模拟器,如下图: