从项目中删除CocoaPods的正确方法是什么?我要删除整个CocoaPod。由于客户施加的某些限制,我无法使用它。我只需要一个xcodeproj而不是xcworkspace。
pod deintegrate
从项目中删除CocoaPods的正确方法是什么?我要删除整个CocoaPod。由于客户施加的某些限制,我无法使用它。我只需要一个xcodeproj而不是xcworkspace。
pod deintegrate
Answers:
可以从项目中删除CocoaPods,但目前尚无法通过CLI自动执行。第一件事,如果您唯一的问题是无法使用,则xcworkspace
可以xcodeproj
通过使用--no-integrate
将产生Pods.xcodeproj
而不是工作空间的标志,仅将s 与CocoaPods一起使用。然后,您可以将其xcodeproj
作为子项目添加到main中xcodeproj
。
如果您确实要删除所有CocoaPods集成,则需要做一些事情:
注意如果不正确地编辑其中的某些内容,可能会破坏您的主项目。我强烈建议您将项目检查到源代码管理中,以防万一。这些说明也适用于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
阶段。完成这些步骤后,应xcodeproj
在集成CocoaPods之前设置一个存在的单一对象。如果我错过了任何事情,请告诉我,我将对其进行编辑。
此外,我们一直在寻找有关如何改善CocoaPods的建议,因此,如果您遇到问题,请在我们的问题跟踪器中提交它们,以便我们提出解决问题的方法!
编辑
如Jack Wu在评论中所示,有一个第三方CocoaPods插件可以为您自动执行这些步骤。可以在这里找到。请注意,它是第三方插件,可能在CocoaPods更新时可能不会总是更新。还要注意,它是由CocoaPods核心团队成员制作的,因此不会出现问题。
pod deintegrate
并pod 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
CocoaPod文档位于pod deintegrate
:https : //guides.cocoapods.org/terminal/commands.html#pod_deintegrate
要从项目中完全删除Pod,您需要先安装两件事...以下是(假设您的系统中已经安装了cocoa-pods。)...
安装
Cocoapods-Deintegrate插件
在终端上使用以下命令进行安装。
sudo gem install cocoapods-deintegrate
Cocoapods-Clean插件
在终端上使用以下命令进行安装。
sudo gem install cocoapods-clean
用法
首先,像往常一样使用命令转到项目文件夹。
cd (path of the project) //Remove the braces after cd
现在,使用这两个插件将其完全删除,如下所示。
Cocoapods-Deintegrate插件
在终端上使用以下命令首先将项目中的Pod集成在一起。
pod deintegrate
Cocoapods-Clean插件
将Pod从项目中解集成后,请在终端上使用以下命令彻底清洁它。
pod clean
完成上述任务后,Podfile仍应保留在您的项目目录中。只需手动删除该文件或在终端上使用以下命令。
rm Podfile
就是这样...现在,您的项目已从豆荚中解放出来了...清洗了。
从系统中删除可可足类。
任何方式都可以尝试在终端上使用以下命令从系统中卸载/删除可口可乐。
sudo gem uninstall cocoapods
它将自动删除古柯荚。
谢谢。希望这会有所帮助。
我认为有一种更简单的方法可以做到这一点。
正如接受的答案所编辑的那样,现在您可以使用第三方插件cocoapods-deintegrate,它是可靠的,因为它是由CocoaPods核心团队成员制作的。
但是,仍然存在一些文件:
Podfile
Podfile.lock
Workspace
您可以手动将它们从项目中删除,但是感谢cocoapods-clean,还有另一个工具可以帮助您清洁它们。
最后,卸载工作仍未完成,cocoapods-clean
请不要清理Podfile
,只需运行:
rm Podfile
干杯!
删除之前,应确保已备份项目!
pod deintegrate
此cmd之后,项目中没有留下任何Cocoapods的痕迹。
但是您引用Pods项目的工作区仍然保留,您需要手动删除以下3个文件:
xx.xcworkspace
Podifle
Podfile.lock
然后,您可以再次使用您的项目。
玩得开心!
测试CocoaPod版本= 1.2.0
Keith的答案很好-我只想指出一点,因为Cocoapods 0.36开始支持Dynamic Frameworks,如果您使用的是'use_frameworks!'。在“ Podfile”中,并且希望删除Cocoapods,必须执行以下操作:
Build Phases
删除Embed Pods Frameworks
阶段。Pods
也Build Phases
将其删除。
开发人员可能面临两个方面。
在第一种情况下,您必须使用“ pod deintegrate”并遵循以上答案中提到的几个步骤。
对于第二种情况,如果您要卸载已安装的任何特定框架,则在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和parse框架(已使用pod安装),而不是iCarousel,这就是为什么我如上所述更新pod文件的原因。
现在,如果我运行pod install,它将使iCarousel保持在我的项目中,并将删除facebook并进行解析。
Podfile
,Podfile.lock
的Pods
文件夹,然后将生成的工作空间。.xcodeproj
,删除对Pods.xcconfig
文件和libPods.a
文件的引用。Pods.framework
。您可能要做的唯一一件事就是包括以前使用过的某些库。您可以通过简单地将pod文件夹中的任何文件夹拖到您的项目中来完成此操作(我更喜欢将它们放到我的Supporting Files文件夹中)。
它为我工作。
如果不起作用,请尝试
1.清洁项目。
2.删除衍生数据。
如果您不知道如何删除派生数据,请点击此处
删除所有相关的Pod文件:
在项目浏览器中:
单击项目名称(蓝色图标)->目标(*)->构建阶段->删除“ [CP] Check Pods manifests.lock”(单击“ x”)
(*)单击项目名称,您可能必须单击“显示项目和目标列表”才能首先看到侧栏。
我要简短地写下iv所做的事情(从我的项目中删除任何CocoaPods)。
要从xcode删除框架引用:
podfile
从中删除名称.plist
如果您只想删除一个Pod并保留其他可能已安装的Pod,请在您的应用目录中打开Podfile,然后删除要删除的Podfile。然后使用终端浏览到您的应用程序目录并键入:
pod update
这将删除您从podfile中删除的pod。您将在终端中看到它已被删除:
Analyzing dependencies
Removing FirebaseUI
Removing UICircularProgressRing
请注意,此方法还将所有更新拉到您的Podfile中的其他Pod。您可能想要也可能不想要。
pod install
用于添加/删除容器。这是专门为了避免像您在此处所说的那样进行更新。您可以在此主题的更多内容上阅读他们的“指南” ... guides.cocoapods.org/using/pod-install-vs-update.html
使用以下Terminal的命令(不要忘了在新行的开头使用sudo):
open:YourDir YouName$ sudo gem uninstall cocoapods
Password:?
Remove executables:
pod, sandbox-pod
in addition to the gem? [Yn] Y
Removing pod
Removing sandbox-pod
Successfully uninstalled cocoapods-1.4.0
open:YourDir YourName$ gem list --local | grep cocoapods
cocoapods-core (1.4.0)
cocoapods-deintegrate (1.0.2)
cocoapods-downloader (1.1.3)
cocoapods-plugins (1.0.0)
cocoapods-search (1.0.0)
cocoapods-stats (1.0.0)
cocoapods-trunk (1.3.0)
cocoapods-try (1.1.0)
像这样一一卸载列表:
open:YourDir YourName$ sudo gem uninstall cocoapods-core
Successfully uninstalled cocoapods-core-1.4.0
open:YourDir YourName$ sudo gem uninstall cocoapods-trunk
Successfully uninstalled cocoapods-trunk-1.3.0
open:YourDir YourName$ sudo gem uninstall cocoapods-try
Successfully uninstalled cocoapods-try-1.1.0
open:YourDir YourName$ gem list --local | grep cocoapods
open:YourDir YourName$ sudo gem uninstall cocoapods-stats
Successfully uninstalled cocoapods-stats-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-search
Successfully uninstalled cocoapods-search-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-downloader
Successfully uninstalled cocoapods-downloader-1.1.3
open:YourDir YourName$ sudo gem uninstall cocoapods-plugins
Successfully uninstalled cocoapods-plugins-1.0.0
open:YourDir YourName$ gem list --local | grep cocoapods
cocoapods-deintegrate (1.0.2)
open:YourDir YourName$ sudo gem uninstall cocoapods-deintegrate
Successfully uninstalled cocoapods-deintegrate-1.0.2
open:YourDir YourName$ sudo gem uninstall cocoapods-stats
Successfully uninstalled cocoapods-stats-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-search
Successfully uninstalled cocoapods-search-1.0.0
open:YourDir YourName$ sudo gem uninstall cocoapods-downloader
Successfully uninstalled cocoapods-downloader-1.1.3
open:YourDir YourName$ sudo gem uninstall cocoapods-plugins
Successfully uninstalled cocoapods-plugins-1.0.0
open:YourDir YourName$ gem list --local | grep cocoapods
cocoapods-deintegrate (1.0.2)
open:YourDir YourName$ sudo gem uninstall cocoapods-deintegrate
Successfully uninstalled cocoapods-deintegrate-1.0.2
我认为您不再需要整合。我可以在终端中使用以下命令来执行此操作:
吊舱安装
它会自动删除Podfile中不再存在的文件