React/RCTBridgeDelegate.h' 找不到文件
React/RCTBridgeDelegate.h' file not found
我在 terminal.When 使用 react-native init auth 创建了一个名为 auth 的新项目 我尝试 运行 使用 react-native 运行-ios 的项目.构建失败并给出错误 'React/RCTBridgeDelegate.h' 找不到文件。
尝试更新 React Native 版本
react-native 运行-ios 在终端 mac
我希望构建成功并看到 ios 模拟器
我得到的实际结果是构建失败,因此看不到模拟器
此问题与 cocoapods 依赖管理器有关。执行以下操作或解决此问题:
- 打开终端并转到您的项目ios目录
- 输入
pod init
(如果不存在)然后输入pod install
- 打开工作区项目并从 ios 文件夹中删除构建
- 运行
react-native run-ios
来自终端。
现在应该可以了。
我按照@Vahid 的建议做了,但我还有另一个问题。我遵循的一组说明告诉我将相关的 .xcodeproj 文件拉到我的实际项目中,然后手动 link 几个不同的文件。
这些步骤不是必需的,而且给我带来了问题。
我在关注这个:
https://github.com/frostney/react-native-ibeacon
但最好使用这个 npm 包并按照他们的说明进行操作:
https://www.npmjs.com/package/react-native-ibeacons
在我的例子中,当我执行 pod update && pod install
时,libPods-FOO.a
库不知何故变得未链接。要查看这是否适用于您:
在Xcode中,在Project Navigator下查看:
[Your Project Name] --> Targets --> [Your target name] --> General
向下滚动到 Frameworks, Libraries and Embedded Content
如果那里没有 libPods-XXXX.a
(其中 XXXX 是您的项目名称),请添加它:
- 点击“+”号添加 libPods 库
- 在搜索框中搜索
libPods
- 选择
libPods-XXXX.a
并点击 Add
。
按照以下步骤操作:
Select 您在 Xcode
上的项目
转到构建设置
在搜索路径选项卡中 select Header 搜索路径并为调试和发布添加此值
$(继承)
${PODS_ROOT}
${SRCROOT}/../../../ios/Pods/Headers(确保将其设置为递归)
[Mac OSX]
我更新了 cocoapods 版本
brew upgrade cocoapods
如果您在 M1 芯片上使用 mac 并尝试在模拟器上 运行 应用程序,则可能会发生这种情况。尝试从官方网站(https://iterm2.com/)安装 iterm2,并使用 Rosetta(Applications -> Right click on 'Iterm2' app -> "Get info" -> Check "Open using Rosetta"
)启动它。然后 运行:
sudo gem install cocoapods
rm -rf /Users/{USERNAME}/.cocoapods/repos/cocoapods
- 转到您的项目文件夹并运行
cd ./ios && pod install
- 运行 使用
npx react-native run-ios
构建
提示:对于使用 M1 Mac 的用户,pod install
将不起作用。您应该按照 this issue
中的说明使用 arch -x86_64 pod install
在这个特定项目中,某些目标不起作用。我注意到出现此错误的损坏目标缺少 libPods-myProjectName.a。在 Targets -> General 选项卡下,“Frameworks, Libraries and Embedded Content”我按下“+”图标并搜索“pods”并添加“pods-myProjectName.a”,现在它似乎工作。这可能不适用于您,但我将其添加为另一种可能出错的可能性。
如果你有 Mac Apple M1 芯片,可以通过两种方式解决,
#解决方案 1
- 打开应用程序->实用程序->Terminal.app
- 右键单击,Terminal.app -> 获取信息 -> 常规 -> 启用“使用 Rosetta 打开”
- 重启终端
#解决方案 2
- 从终端执行
sudo arch -x86_64 gem install ffi
- 进入iOS目录并执行
arch -x86_64 pod install
我在 terminal.When 使用 react-native init auth 创建了一个名为 auth 的新项目 我尝试 运行 使用 react-native 运行-ios 的项目.构建失败并给出错误 'React/RCTBridgeDelegate.h' 找不到文件。
尝试更新 React Native 版本
react-native 运行-ios 在终端 mac
我希望构建成功并看到 ios 模拟器 我得到的实际结果是构建失败,因此看不到模拟器
此问题与 cocoapods 依赖管理器有关。执行以下操作或解决此问题:
- 打开终端并转到您的项目ios目录
- 输入
pod init
(如果不存在)然后输入pod install
- 打开工作区项目并从 ios 文件夹中删除构建
- 运行
react-native run-ios
来自终端。
现在应该可以了。
我按照@Vahid 的建议做了,但我还有另一个问题。我遵循的一组说明告诉我将相关的 .xcodeproj 文件拉到我的实际项目中,然后手动 link 几个不同的文件。
这些步骤不是必需的,而且给我带来了问题。
我在关注这个: https://github.com/frostney/react-native-ibeacon
但最好使用这个 npm 包并按照他们的说明进行操作: https://www.npmjs.com/package/react-native-ibeacons
在我的例子中,当我执行 pod update && pod install
时,libPods-FOO.a
库不知何故变得未链接。要查看这是否适用于您:
在Xcode中,在Project Navigator下查看:
[Your Project Name] --> Targets --> [Your target name] --> General
向下滚动到
Frameworks, Libraries and Embedded Content
如果那里没有
libPods-XXXX.a
(其中 XXXX 是您的项目名称),请添加它:- 点击“+”号添加 libPods 库
- 在搜索框中搜索
libPods
- 选择
libPods-XXXX.a
并点击Add
。
按照以下步骤操作:
Select 您在 Xcode
上的项目转到构建设置
在搜索路径选项卡中 select Header 搜索路径并为调试和发布添加此值
$(继承)
${PODS_ROOT}
${SRCROOT}/../../../ios/Pods/Headers(确保将其设置为递归)
[Mac OSX]
我更新了 cocoapods 版本
brew upgrade cocoapods
如果您在 M1 芯片上使用 mac 并尝试在模拟器上 运行 应用程序,则可能会发生这种情况。尝试从官方网站(https://iterm2.com/)安装 iterm2,并使用 Rosetta(Applications -> Right click on 'Iterm2' app -> "Get info" -> Check "Open using Rosetta"
)启动它。然后 运行:
sudo gem install cocoapods
rm -rf /Users/{USERNAME}/.cocoapods/repos/cocoapods
- 转到您的项目文件夹并运行
cd ./ios && pod install
- 运行 使用
npx react-native run-ios
构建
提示:对于使用 M1 Mac 的用户,pod install
将不起作用。您应该按照 this issue
arch -x86_64 pod install
在这个特定项目中,某些目标不起作用。我注意到出现此错误的损坏目标缺少 libPods-myProjectName.a。在 Targets -> General 选项卡下,“Frameworks, Libraries and Embedded Content”我按下“+”图标并搜索“pods”并添加“pods-myProjectName.a”,现在它似乎工作。这可能不适用于您,但我将其添加为另一种可能出错的可能性。
如果你有 Mac Apple M1 芯片,可以通过两种方式解决,
#解决方案 1
- 打开应用程序->实用程序->Terminal.app
- 右键单击,Terminal.app -> 获取信息 -> 常规 -> 启用“使用 Rosetta 打开”
- 重启终端
#解决方案 2
- 从终端执行
sudo arch -x86_64 gem install ffi
- 进入iOS目录并执行
arch -x86_64 pod install