如何从一个项目中移除CocoaPods?

20 浏览
0 Comments

如何从一个项目中移除CocoaPods?

从一个项目中删除CocoaPods的正确方法是什么?我想要完全删除CocoaPod。由于客户强加了一些限制,我不能使用它。我需要只有一个xcodeproj而不是一个xcworkspace。

admin 更改状态以发布 2023年5月21日
0
0 Comments

pod deintegratepod clean 是两个被指定的命令,用于从你的项目/仓库中移除 CocoaPod。

以下是完整的指令集:

$ sudo gem install cocoapods-deintegrate cocoapods-clean
$ pod deintegrate
$ pod cache clean --all
$ rm Podfile

这个解决方案最初是从这里找到的:https://medium.com/@icanhazedit/remove-uninstall-deintegrate-cocoapods-from-your-xcode-ios-project-c4621cee5e42#.wd00fj2e5

有关 pod deintegrate 的 CocoaPod 文档:https://guides.cocoapods.org/terminal/commands.html#pod_deintegrate

0
0 Comments

从项目中删除CocoaPods是可能的,但目前CLI并没有自动化此过程。首先,如果唯一的问题是不能使用xcworkspace,则可以通过使用--no-integrate标志仅使用xcodeproj使用CocoaPods,该标志将生成Pods.xcodeproj但不生成工作区,然后您可以将此xcodeproj作为子项目添加到您的主xcodeproj

如果您真的想删除所有CocoaPods集成功能,则需要执行以下几个步骤:

注意:如果不正确地执行这些步骤可能会破坏您的主项目。我强烈建议您将项目保存到源代码控制中,以防万一。此外,这些说明适用于CocoaPods版本0.39.0,它们可能会随着新版本的推出而发生改变。

  1. 删除独立文件(PodfilePodfile.lock和您的Pods目录)
  2. 删除生成的xcworkspace
  3. 打开您的xcodeproj文件,删除对Pods.xcconfiglibPods.a(在Frameworks组中)的引用
  4. 在您的Build Phases下,删除Copy Pods ResourcesEmbed Pods FrameworksCheck Pods Manifest.lock阶段。
  5. 这可能很明显,但您需要以其他方式集成第三方库或从代码中删除对它们的引用。

在完成上述步骤后,您应该拥有一个在集成CocoaPods之前存在的单个xcodeproj。如果我漏掉了什么,请告诉我,我会进行编辑。

我们一直在寻求建议,以改进CocoaPods,如果您有任何问题,请在我们的问题跟踪器中提交,以便我们想出解决方法!

编辑

评论中Jack Wu所示,有一个第三方的CocoaPods插件,可以为您自动完成这些步骤。它可以在此处找到。请注意,它是一个第三方插件,可能不会始终更新CocoaPods。同时注意,它是由CocoaPods核心团队成员制作的,所以这个问题不会成为问题。

0