终端机拒绝 "pod update"
Terminal refusing to "pod update"
我搜索了所有内容,但最接近的答案在此处 。但是它对我不起作用,因为我没有弃用 pods。而且我不能发表评论来询问别人我的情况,所以我提出了一个新问题。
我没有“指定版本”,我使用 IOS 13 作为部署目标。关于如何更新这些 pods 有什么想法吗?谢谢!
# platform :ios, '13.0'
target 'ChatApp' do
use_frameworks!
pod 'MessageKit'
pod 'JGProgressHUD'
pod 'RealmSwift'
pod 'SDWebImage'
# firebase pods
pod 'Firebase/Analytics'
pod 'Firebase/RemoteConfig'
pod 'Firebase/Auth'
pod 'FirebaseUI'
pod 'Firebase/Database'
pod 'Firebase/Storage'
# FaceBook Sign in pods
pod 'FBSDKLoginKit'
#Google Sign in pods
pod 'GoogleSignIn'
end
运行 pod repo update
更新您的本地数据库。
这是因为有依赖需要特定的版本。
例如,如果我们看到您的“过时”pods,除了 FBSDKLoginKit
,它们不会直接列在您的 pod 文件列表中。
让我们看看你的Podfile.lock
。
列表是这样的:
- PodA
- PodB
其中 PodA
需要 PodB
,这是通过“缩进”。
您使用FirebaseFirestore
。
我们可以看到,即使是最后一个版本
FirebaseFirestore 在 0.20200225
需要 abseil
(不是它的最后一个版本)。
您可能会说,“嘿,我没有写 pod FirebaseFireStore”,这很正常,您是间接需要它(有点像您的 Podfile.lock
):
- FirebaseUI (9.0.0):
- FirebaseUI/Firestore (= 9.0.0)
- ...
- FirebaseUI/Firestore (9.0.0):
- Firebase/Firestore
- FirebaseFirestore (1.19.0):
- abseil/algorithm (= 0.20200225.0)
- ...
您使用 FirebaseUI
,需要 FirebaseUI/Firestore
,需要 Firebase/Firestore
版本 1.19.0,需要 abseil
在那个版本。
看到噩梦了吗?
检查是一场噩梦,但如果需要,您可以自己进行检查,并找出阻塞某个 pod 版本的 pod。我只是举个例子。
现在,您正在构建依赖关系,因此他们需要找到一个通用版本,所有版本都可以正常工作,您真的不能有不同的版本。不然不知道该用哪个,是全变了的4.0.0版,还是1.0.0版?
也许 cocoapods-graph (not tested) or cocoapods-dependency 会给你一个更好的主意:
运行 pod repo update
更新然后 运行 pod install
并检查输出
我搜索了所有内容,但最接近的答案在此处
我没有“指定版本”,我使用 IOS 13 作为部署目标。关于如何更新这些 pods 有什么想法吗?谢谢!
# platform :ios, '13.0'
target 'ChatApp' do
use_frameworks!
pod 'MessageKit'
pod 'JGProgressHUD'
pod 'RealmSwift'
pod 'SDWebImage'
# firebase pods
pod 'Firebase/Analytics'
pod 'Firebase/RemoteConfig'
pod 'Firebase/Auth'
pod 'FirebaseUI'
pod 'Firebase/Database'
pod 'Firebase/Storage'
# FaceBook Sign in pods
pod 'FBSDKLoginKit'
#Google Sign in pods
pod 'GoogleSignIn'
end
运行 pod repo update
更新您的本地数据库。
这是因为有依赖需要特定的版本。
例如,如果我们看到您的“过时”pods,除了 FBSDKLoginKit
,它们不会直接列在您的 pod 文件列表中。
让我们看看你的Podfile.lock
。
列表是这样的:
- PodA
- PodB
其中 PodA
需要 PodB
,这是通过“缩进”。
您使用FirebaseFirestore
。
我们可以看到,即使是最后一个版本
FirebaseFirestore 在 0.20200225
需要 abseil
(不是它的最后一个版本)。
您可能会说,“嘿,我没有写 pod FirebaseFireStore”,这很正常,您是间接需要它(有点像您的 Podfile.lock
):
- FirebaseUI (9.0.0):
- FirebaseUI/Firestore (= 9.0.0)
- ...
- FirebaseUI/Firestore (9.0.0):
- Firebase/Firestore
- FirebaseFirestore (1.19.0):
- abseil/algorithm (= 0.20200225.0)
- ...
您使用 FirebaseUI
,需要 FirebaseUI/Firestore
,需要 Firebase/Firestore
版本 1.19.0,需要 abseil
在那个版本。
看到噩梦了吗?
检查是一场噩梦,但如果需要,您可以自己进行检查,并找出阻塞某个 pod 版本的 pod。我只是举个例子。
现在,您正在构建依赖关系,因此他们需要找到一个通用版本,所有版本都可以正常工作,您真的不能有不同的版本。不然不知道该用哪个,是全变了的4.0.0版,还是1.0.0版?
也许 cocoapods-graph (not tested) or cocoapods-dependency 会给你一个更好的主意:
运行 pod repo update
更新然后 运行 pod install
并检查输出