我的React Native应用程序正在几台macOS机器上构建。最近我遇到了一个问题,因为在安装pod的过程中,构建开始失败。
pod install --deployment
在所有的服务器上(除了有问题的那个),上面的命令成功地安装了所需的pod,Podfile.lock文件保持不变,但是在其中一个服务器上,我得到:
[!] There were changes to the podfile in deployment mode:
M hermes-engine
Podfile.lock确实被修改了,并包含以下内容:
hermes-engine:
:podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec"
:tag: ''
而文件的原始内容是:
hermes-engine:
:podspec: "../node_modules/react-native/sdks/hermes-engine/hermes-engine.podspec"
:tag: hermes-2023-08-07-RNv0.72.4-813b2def12bc9df02654b3e3653ae4a68d0572e0
在pod install
期间从该文件中删除tag
值的原因是什么?
更新:
所有构建服务器都安装了相同的工具:
| 工具|Mac 1(精细)|Mac 2(精细)|Mac 3(有问题)|
| --|--|--|--|
| OS| macOS 13.6(ARM64)|macOS 13.3.1(X64)|macOS 13.4.1(ARM64)|
| 壳|五点九|五点九|五点九|
| 节点|18.17.1| 18.17.0| 18.17.1|
| Yarn|1.22.19| 1.22.19| 1.22.19|
| npm| 9.6.7| 9.6.7| 9.6.7|
| CocoaPods| 1.12.1| 1.12.1| 1.12.1|
| Xcode| 14.3.1|十四点三|14.3.1|
| Java| 17.0.7| 17.0.7| 17.0.8|
| Ruby| 2.6.10| 2.6.10| 2.6.10|
我也清除了所有机器的CocoaPods缓存,但这也没有帮助。
1条答案
按热度按时间zu0ti5jz1#
我们过去也遇到过类似的问题,我们花了一些时间来确定根本原因。最终,问题源于我们服务器上安装的不同版本的工具。
要诊断此问题,您可以使用终端比较以下工具的版本:
xcodebuild -version
pod --version
node -v
还检查cocoapods-patch版本:
gem list cocoapods-patch
通过比较这些版本,您可能会发现差异。这强调了为大型项目维护标准化工具集的重要性。通常,这些标准记录在README.md文件中,所有团队成员都必须遵守这个通用工具集以确保一致性。