从现有的 Xcode 项目制作 CocoaPod

Posted

技术标签:

【中文标题】从现有的 Xcode 项目制作 CocoaPod【英文标题】:Making a CocoaPod from an existing Xcode project 【发布时间】:2015-07-16 05:03:45 【问题描述】:

到目前为止,我一直在尝试破解它,但无济于事。我有我的 Xcode Swift 项目及其用于源代码控制的 github 存储库。我想用这个项目创建一个新的 CocoaPod。

我已经浏览了 CocoaPods 文档,但到目前为止还没有任何效果,我现在真的很困惑,有人可以写下我需要做的步骤,以便从我现有的 Xcode 项目中制作新的 pod,该项目已经有一个 Github链接到它的存储库。

提前致谢!

【问题讨论】:

你读过这个吗? guides.cocoapods.org/making/making-a-cocoapod.html 是的,但是这会创建一个空的 Xcode 项目。我已经有了我的项目及其链接的 git repo。 如果您找到了解决问题的方法,请发布将 CocoaPods 添加到现有项目的步骤? 【参考方案1】:

取自Cocoapods documentation:

$ pod spec create YourProject
$ edit YourProject.podspec

然后在编辑器中将s.source_files = "Classes", "Classes/**/*.h,m" 替换为

s.source_files = "Classes/**/*.swift"

然后运行直到通过所有测试..

$ pod spec lint YourProject.podspec

基本上就这些了。

您可以通过创建一个新的演示应用并按照 Anbu.Karthik 中的 9 个步骤在现实生活中测试这个 Podspec。

在创建的 podfile 中添加如下内容:

pod 'YourProject', :path => '/Users/you/work/YourProject'

路径应该指向包含 podspec 文件的目录。再次运行pod install

【讨论】:

【参考方案2】:

从现有 xcode 项目创建 Cocoapod 的简单步骤

在您的 git 帐户上创建一个存储库(存储库名称,检查 README, 选择 MIT 许可)。

复制你的存储库的 url。打开终端并运行以下命令。

git clone 复制了你的仓库 url

现在将您的 Xcode 项目复制到克隆的存储库文件夹中 你的 Mac。现在运行以下命令

git add -u 添加所有文件(如果不添加使用:git add filepath/folder)

git commit -m "你的自定义消息"

git push origin master

创建一个新版本以转到您的 git 存储库或运行以下命令

git 标签 1.0.0

git push --tags

首先,我们需要确保您已安装 CocoaPods 并且 准备在您的终端中使用。运行以下命令:

sudo gem install cocoapods --pre

创建 Podspec 

所有 Pod 都有一个 podspec 文件。 podspec,顾名思义, 定义了 Pod 的规格!现在让我们做一个,运行 在终端上执行以下命令

触摸 PodName.podspec

添加和修改您的 .podspec 文件后。验证您的 .podspec 通过在终端上点击以下命令来文件

pod lib lint

一旦您成功验证它并且没有错误运行以下 分别注册你和构建 cocoapod 的命令

pod 中继注册 

pod trunk push PodName.podspec

如果一切顺利,你会在终端上得到这个

? PodName (1.0.0) 发布成功

? 2 月 5 日 02:32

?https://cocoapods.org/pods/PodName

? 告诉你的朋友!

是的!!!!恭喜您获得了 pod 链接。在任何你想使用的地方使用它。

【讨论】:

使用 pod trunk register 需要添加一个与您在 podspec author 属性中提供的电子邮件地址相匹配的电子邮件地址,以及您的姓名和描述。例如:$ pod trunk register ben@example.com 'Ben Davidson' --description='我的个人电脑'

以上是关于从现有的 Xcode 项目制作 CocoaPod的主要内容,如果未能解决你的问题,请参考以下文章

从 Xcode 项目中删除 SwiftyJSON 框架/cocoapod

Cocoapod:为啥 Xcode 构建过程试图找到已经从我的项目中删除的库

Kotlin Multiplatform 项目的 iosMain 中的 Cocoapod 依赖项,cocoapod 未解析参考

Kotlin Multiplatform 项目包含 cocoapod 依赖项

如何从现有的 iPhone 代码库发布 iPad 应用程序?

具有Swift 4依赖项的Swift 3 Cocoapod