如何从项目中删除CocoaPods?

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

从项目中删除CocoaPods是可能的,但是目前CLI没有自动执行。 首先,如果唯一的问题是无法使用xcworkspace那么可以使用CocoaPods和xcodeproj通过使用--no-integrate标志来生成Pods.xcodeproj而不是工作区。 然后你可以把这个xcodeproj作为子项目添加到你的主xcodeproj

如果你真的想删除所有的CocoaPods集成,你需要做一些事情:

注意如果做错了,编辑这些东西可能会破坏你的主项目。 为了以防万一,我强烈build议你检查你的项目到源代码控制。 此外,这些说明是为CocoaPods 0.39.0版本,他们可以更改与新版本。

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

在完成这些步骤之后,您应该使用集成CocoaPods之前存在的单个xcodeproj进行设置。 如果我错过了任何事情,请告诉我,我会编辑这个。

此外,我们一直在寻找如何改进CocoaPods的build议,所以如果你有问题,请在我们的问题跟踪器提交他们,所以我们可以想出一个方法来解决它们!

编辑

正如Jack Wu在评论中所显示的那样 ,第三方CocoaPods插件可以为您自动执行这些步骤。 它可以在这里find。 请注意,这是一个第三方插件,可能并不总是在CocoaPods更新的时候。 另外请注意,它是由一个CocoaPods核心团队成员,使问题不会成为一个问题。

pod deintegratepod clean是两个指定的命令,用于从项目/回购库中删除CocoaPod。

以下是一组完整的命令:

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

原始解决scheme在这里find: https : //medium.com/@icanhazedit/remove-uninstall-deintegrate-cocoapods-from-your-xcode-ios-project-c4621cee5e42#.wd00fj2e5

关于pod deintegrate文档pod deintegrate : https : pod deintegrate

我认为有一个更简单的方法来做到这一点。

按照接受的答案编辑,现在可以使用第三方插件cocoapods-deintegrate ,这是可靠的,因为它是由CocoaPods核心团队成员制作的。

但是,仍然有一些文件:

 Podfile Podfile.lock Workspace 

你可以从你的项目手动删除他们,但也有另一个工具来帮助你清理它们,感谢cocoapods – 清洁 。

最后,卸载工作还没有完成, cocoapods-clean不清理Podfile ,只需运行:

 rm Podfile 

干杯!

在删除之前,你应该确保你有你的项目的备份!

要从一个项目中完全删除豆荚,您需要先安装两个东西…那些如下(假设您的系统中已经安装了cocoa豆荚)。

  1. Cocoapods – 解锁插件
  2. Cocoapods干净的插件

安装过程…

  1. Cocoapods – 解锁插件

    在您的terminal上使用以下命令来安装它。

     sudo gem install cocoapods-deintegrate 
  2. Cocoapods干净的插件

    在您的terminal上使用以下命令来安装它。

     sudo gem install cocoapods-clean 

使用程序…

首先使用像往常一样的命令转到你的项目文件夹..

 cd (path of the project) //Remove the braces after cd 

现在使用这两个插件两个完全删除它,如下所示。

  1. Cocoapods – 解锁插件

    首先在您的terminal上使用以下命令从您的项目中解体。

      pod deintegrate 

解体荚

  1. Cocoapods干净的插件

    将pod从您的项目中解体后,在terminal上使用以下命令将其彻底清除。

      pod clean 

    完成上述任务后,应该有Podfile仍然在您的项目目录..只需手动删除或在terminal上使用此以下命令..

      rm Podfile 

多数民众赞成在…现在你有你的项目从豆荚..释放。

从系统中删除Cocoapods

任何方式尝试在您的terminal上使用以下命令来卸载/删除系统中的古柯。

 sudo gem uninstall cocoapods 

它会自动去除可口可乐。

谢谢。 希望这有助于。

pod deintegrate

在此cmd之后,您的项目中不会留下Cocoapods的痕迹。

但是引用Pods项目的工作区仍然存在,您需要手动删除以下3个文件:

xx.xcworkspace
Podifle
Podfile.lock

然后你可以再次使用你的项目。

玩的开心!

testingCocoaPod版本= 1.2.0

我尝试了所有这些答案,但它仍然不会build立,最终我尝试了:

 pod deintegrate pod install 

实际上工作!

就像它需要从构build阶段中删除所有的pod脚本,并重新添加它们以使其工作,至less在我的情况下。

Keith的答案很好 – 我只想指出,因为Cocoapods 0.36开始支持dynamic框架 ,如果你正在使用'use_frameworks!' 在你的“Podfile”中,你想删除Cocoapods,你必须这样做:

  • Build Phases删除Embed Pods Frameworks阶段。

开发者可能面临两方面的问题。

  • 他要么完全从项目中删除豆荚
  • 开发人员想要从pod的项目中卸载特定的框架。

在第一种情况下,您必须使用“荚分解”,并遵循上面答案中提到的几个步骤。

对于第二种情况,即如果您想卸载任何特定的框架,那么您的pod文件中提供了非常简单的方法,只需评论您想要卸载并运行pod install命令的框架即可。

 # Uncomment this line to define a global platform for your project # platform :ios, '9.0' target 'ProjectName' do # Uncomment this line if you're using Swift or would like to use dynamic frameworks # use_frameworks! pod 'iCarousel', '~> 1.8' # pod 'Facebook-iOS-SDK', '~> 4.1' # pod 'ParseFacebookUtilsV4', '~> 1.11' # pod 'Parse', '~> 1.14' end 

在这里我想卸载Facebook和parsing框架(这是使用豆荚安装),而不是iCarousel这就是为什么我已经更新我的豆荚文件,如上所示。

现在,如果我运行pod安装,它将保持iCarousel,因为它在我的项目,并将删除Facebook和parsing。

  1. 您需要做的第一件事是删除PodfilePodfile.lockPods文件夹和生成的工作区。
  2. 接下来,在.xcodeproj ,删除对Pods.xcconfig文件和libPods.a文件的引用。
  3. 在Build Phases项目选项卡中,删除Check Pods Manifest.lock部分(打开),Copy Pods Resources部分(底部)和Embed Pod资源(底部)。
  4. 删除Pods.framework

你可能想要做的唯一的事情就是包括你之前使用的一些库。 你可以通过简单地拖动任何文件夹中的任何文件夹到你的项目中(我更喜欢把它们放到我的支持文件夹中)。

它为我工作。

如果不行,请尝试
1.清理项目。
2.删除导出的数据。

如果你不知道如何删除派生的数据去这里

如何在Xcode6中“删除派生数据”?

我会写很简单的做什么(从我的项目中删除任何CocoaPods)..

  1. 删除任何添加的文件夹(框架,豆荚,…)
  2. 删除所有添加的文件(PROJECT.xcworkspace,PodFile,PodFile.lock,Pods-PROJECT.debug.xcconfig,Pods-PROJECT.release.xcconfig,…)
  3. 只保留原来的(PROJECT,PROJECT_TEST,PROJECT.xcodeproj)
  4. 在xcode上从项目中移除框架引用

从xcode中删除框架引用:

  1. 使用项目导航器
  2. select项目
  3. select目标项目
  4. 从顶部选项中select“构build阶段”
  5. 保留默认组(Target Dependencies,Compile Sources,Linked Binary with Libraries,Copy Bundle Resources)并删除其他的
  1. .plist删除podfile名称
  2. 重新安装吊舱(使用此链接进行吊舱安装)