ChatGPT解决这个技术问题 Extra ChatGPT

从终端(iOS)运行 React Native 应用程序时出错

我正在关注 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 运行应用程序时,一切正常。

有什么建议么?

stackoverflow.com/questions/60227353/… 谁能帮我解决这些错误

S
Silicum Silium

查看此链接 (Running react-native run-ios occurs an error?)。 Command line tools 的位置似乎有问题。

在 Xcode 中,选择 Xcode 菜单,然后选择 Preferences,然后选择 Locations 选项卡。从下拉列表中选择您的 Xcode 版本并退出 Xcode。

https://i.stack.imgur.com/M6w7Q.png


@JacobSiegel 您能否提供有关 XCode 中“位置”选项卡的更多信息。
@leo7r 谢谢。我的 CL 工具是空白的。我将设置更改为 Xcode 8.0 并解决了问题。您可能想在答案中强调这一点。干杯!
命令行工具下拉选择对我来说是空白的,单击时我只有一个选项是 Xcode 9.2,我选择了它,保存的更改和工具可用于 react-native。谢谢!
所以我已经这样做了,出于某种原因安装自制程序禁用了它。安装自制软件后,我不得不再次从 xcode 中选择它。
即使选择了 CLT,仍然有错误...:/
o
odlp

您可能需要安装或设置 Xcode 命令行工具的位置。

通过命令行

如果您下载了 Xcode,您可以运行以下命令来设置路径:

sudo xcode-select -s /Applications/Xcode.app

如果尚未安装命令行工具,您可能需要先运行它:

xcode-select --install

在安装命令行工具之前,您可能需要接受 Xcode 许可证:

sudo xcodebuild -license accept 

通过 Xcode

或通过 Xcode (Xcode > Preferences > Locations) 调整 Command Line Tools 设置:

https://i.stack.imgur.com/cVeTY.png


奇迹般有效! <3
A
Alireza

默认情况下,安装 Xcode 后没有选择命令行,所以打开 Xcode 并转到 Preferences >> Locations 并设置 Command Line Tools...

这在 MAC High Sierra 中对我有用,Xcode 版本 9.3:

https://i.stack.imgur.com/VdBJn.jpg

i 打开 iOS 模拟器...

https://i.stack.imgur.com/2fNj7.png

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

https://i.stack.imgur.com/3G0KO.png


最好的答案,最好的。
xcode 13 仍然有这个问题
u
user2066349

在 Xcode 13 中遇到此问题的任何人(如我)的更新 - instruments 命令已被删除。

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


对我来说,升级到 react-native 0.64.0 就足够了(从 0.63.2 开始)
有没有升级 react-native 的解决方法?
H
Heisenberg

就我而言,问题是没有安装 Xcode。


你能解释一下投反对票的原因吗?这是一个真实的答案。我得到了完全相同的错误。
react native 官方网站明确指出你需要 Xcode 才能让 react native 工作。
我正在关注一个初学者教程,假设 xcode 已经安装并且没有提到它。这个错误并不是说你没有安装 xcode。所以,我永远不会知道。
M
Mario Tacke

我必须在第一次安装后接受 XCode 许可证,然后才能运行它。您可以运行以下命令以通过命令行获取许可证提示。您还必须输入 agree 并确认。

sudo xcodebuild -license

如果您愿意,也可以立即接受许可:sudo xcodebuild -license accept(来源:apple.stackexchange.com/a/213151/89456
L
Lovekush Vishwakarma

https://i.stack.imgur.com/fvWo9.png


Z
Zachary Melancon

对于像我这样在更新 Xcode 后遇到此问题但位置设置没有问题的人,重新启动我的计算机就可以了。


B
Bin

对我来说,原来有一个 iOS 系统更新挂起,要求重新启动计算机。重新启动并让更新完成解决了我的问题。


p
pythonjsgeo

在我的情况下,SDKROOT 环境变量是错误的,它引用了旧版本的 iPhoneOSxx.x.sdk。 (也许这会在重新启动后自动解决?)

您可以通过运行 echo $SDKROOT 并验证它是否是有效路径来进行检查。

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

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

u
user11279823

这些解决方案都不适合我。这两个类似的问题提供了有效的临时解决方案,似乎模拟器进程没有正确关闭:

杀死模拟器进程

来自https://stackoverflow.com/a/52533391/11279823

退出模拟器和 Xcode。打开活动监视器,选择 cpu 选项并搜索 sim,杀死所有显示为结果的进程。然后启动终端并运行 sudo xcrun simctl erase all。它将删除所有模拟器的所有内容。根据内容,如果您在某个地方登录密码将会消失,那么安装在该模拟器中的所有开发人员应用程序都将消失。

在启动包之前打开模拟器

来自https://stackoverflow.com/a/55374768/11279823

open -a Simulator; npm start

希望找到一个永久的解决方案。


Z
Zorayr

转到 Xcode Preferences 找到位置选项卡 在 Given Command Line Tools 中设置 Xcode 版本

现在,它将成功运行。


D
Dániel Gergely

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

Xcode screenshot


U
Unnikrishnan

在 Mac 中:毕竟,您遇到了这个问题,可能会在系统偏好设置 -> 网络 -> 以太网 -> 选择高级 -> 代理中丢失以下内容

添加以下行,

*.local,本地主机


C
CruzNadin

这就是我得到解决方案的方式,

> rm -rf ~/Library/Developer/Xcode/DerivedData
> sudo rm -rf /Library/Developer/CommandLineTools
> xcode-select --install
> sudo xcodebuild -license accept

Xcode > Preferences > Location > Command Line Tools 选择。


k
khokanuzzaman khokan

只需转到 Xcode

从左上角菜单 Xcode->preferences-> location-> 单击命令行选项并设置 Xcode 版本,单击 Xcode。


C
CKE

对于任何此类问题:

转到 .expo 文件夹 查找 apk-cache 删除该文件夹

你完成了..

希望能帮助到你?