# 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
15 回答
可以从项目中删除CocoaPods,但CLI当前不会自动删除 . 首先,如果您遇到的唯一问题是无法使用
xcworkspace
,则可以使用xcodeproj
标志使用CocoaPods,这将产生Pods.xcodeproj
但不会产生工作空间 . 然后,您可以将此xcodeproj
作为子项目添加到主xcodeproj
.如果你真的想要删除所有CocoaPods集成,你需要做一些事情:
NOTE 如果不正确地编辑其中的一些内容可能会破坏您的主项目 . 我强烈建议您将项目检查到源代码管理中以防万一 . 这些说明也适用于CocoaPods版本
0.39.0
,它们可能会随新版本而改变 .删除独立文件(
Podfile
Podfile.lock
和Pods
目录)删除生成的
xcworkspace
打开
xcodeproj
文件,删除对Pods.xcconfig
和libPods.a
的引用(在Frameworks
组中)在
Build Phases
下删除Copy Pods Resources
,Embed Pods Frameworks
和Check Pods Manifest.lock
阶段 .这看似显而易见,但您需要以其他方式集成第三方库或从代码中删除对它们的引用 .
在这些步骤之后,您应该使用在集成CocoaPods之前存在的单个
xcodeproj
进行设置 . 如果我错过任何事情让我知道,我会编辑这个 .此外,我们一直在寻找有关如何改进CocoaPods的建议,所以如果您有问题,请在我们的issue tracker中提交,以便我们能够找到解决方法!
EDIT
正如Jack Wu在评论中所提到的那样,第三方CocoaPods插件可以为您自动执行这些步骤 . 它可以找到here . 请注意,它是第三方插件,可能并不总是在CocoaPods时更新 . 另请注意,它是由CocoaPods核心团队成员制作的,因此问题不会成为问题 .
pod deintegrate
和pod clean
是从项目/ repo中删除CocoaPod的两个指定命令 .这是完整的命令集:
原始解决方案在这里找到: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我认为有一种更简单的方法可以做到这一点 .
由接受的答案编辑,现在你可以使用第三方插件cocoapods-deintegrate,它是可靠的,因为它是由CocoaPods核心团队成员制作的 .
但是,仍然有一些文件仍然存在:
您可以手动将它们从项目中删除,但是还有另一种工具可以帮助您清理它们,谢谢cocoapods-clean .
最后,卸载工作仍未完成,
cocoapods-clean
不清理Podfile
,只需运行:干杯!
Before removing you should ensure you have a backup of your project!
要完全从项目中删除pod,你需要先安装两件事......这些是以下内容(假设你的系统中已经安装了cocoa-pods . )......
Cocoapods-Deintegrate插件
Cocoapods-Clean插件
Installation
在终端上使用以下命令进行安装 .
在终端上使用以下命令进行安装 .
Usage
首先使用像往常一样的命令转到你的项目文件夹 .
现在使用这两个插件将其完全删除,如下所示 .
在终端上使用以下命令首先从项目中解除pod .
从项目中解除pod后,在终端上使用以下命令将其完全清除 .
完成上述任务后,应该仍然在项目目录中保留Podfile . 只需手动删除或在终端上使用以下命令 .
多数民众赞成...现在你的项目免于 beans 荚...清理 .
Removing Cocoapods from the system.
任何方式尝试在终端上使用以下命令从系统中卸载/删除可卡包 .
它会自动删除可口可乐包 .
谢谢 . 希望这有帮助 .
pod deintegrate
在此cmd之后,您的项目中没有留下Cocoapods的痕迹 .
但是仍然保留引用Pods项目的工作区,您需要手动删除3个以下的文件:
xx.xcworkspace
Podifle
Podfile.lock
然后,您可以再次使用您的项目 .
玩得开心!
测试CocoaPod版本= 1.2.0
我尝试了所有这些答案,但它仍然无法构建,最终我尝试了:
哪个真的有效!
这就像它需要从构建阶段中删除所有pod脚本并重新添加它们以使其工作,至少在我的情况下 .
基思的答案很棒 - 我只想指出,因为Cocoapods 0.36开始支持 Dynamic Frameworks ,如果您在'Podfile'中使用了'use_frameworks!',并且希望删除Cocoapods,则必须执行以下操作:
Build Phases
删除Embed Pods Frameworks
阶段 .开发人员可能面临两个方面 .
他想要从项目中完全删除pod
开发人员希望从pod中卸载项目中的特定框架 .
在第一种情况下,您必须使用“pod deintegrate”并按照上面的答案中提到的几个步骤 .
对于第二种情况,如果要卸载安装的任何特定框架,那么在pod文件中提供了非常简单的方法,只需注释要卸载的框架并运行pod install命令 .
在这里,我想卸载Facebook和解析框架(使用pod安装)而不是iCarousel,这就是我更新我的pod文件的原因 .
现在,如果我运行pod安装,它将保持iCarousel在我的项目中,并将删除Facebook和解析 .
您需要做的第一件事是删除
Podfile
,Podfile.lock
,Pods
文件夹和生成的工作区 .接下来,在
.xcodeproj
中,删除对Pods.xcconfig
文件和libPods.a
文件的引用 .在Build Phases项目选项卡中,删除Check Pods Manifest.lock部分(打开),Copy Pods Resources部分(底部)和Embed Pod Resources(底部) .
删除
Pods.framework
.您可能想要做的唯一事情是包括您之前使用的一些库 . 您可以通过简单地将pods文件夹中的任何文件夹拖放到项目中来实现此目的(我更喜欢将它们放入我的Supporting Files文件夹中) .
它对我有用 .
如果不行,试试吧
1.清理项目 .
2.删除派生数据 .
如果您不知道如何删除派生数据,请转到此处
How to "Delete derived data" in Xcode6?
我将写一些非常简单的iv(从我的项目中删除任何CocoaPods)...
删除任何添加的文件夹(框架,Pods,...)
删除任何添加的文件(PROJECT.xcworkspace,PodFile,PodFile.lock,Pods-PROJECT.debug.xcconfig,Pods-PROJECT.release.xcconfig,...)
只留下原来的(PROJECT,PROJECT_Tests,PROJECT.xcodeproj)
从xcode上的项目中删除框架引用
要从xcode中删除框架引用:
使用Project Navigator
选择项目
选择目标项目
从顶部选项中选择Build Phases
保留默认组(目标依赖项,编译源,链接二进制文件库,复制软件包资源)并删除任何其他组
从
.plist
删除podfile
名称再次重新安装吊舱(use this link for pod installation)
使用这些终端的命令(不要忘记在新行的开头使用sudo):
像这样逐个卸载列表:
删除所有相关的pod文件 .
xx.xcworkspace Podifle Podfile.lock
和Goto目标 - >构建阶段 - >这里删除[cp]检查pods manifests.lock
如何改进cocoapods:构建一个GUI并忘记这个命令行疯狂 . 我们不再是1974年了 .