创建私有的cocoapod库
作者:@杨阳
本文为作者原创,转载请注明出处:https://www.cnblogs.com/studyios/p/4487909.html
我是通过cocoachina 的一篇文章 跟着学习的 http://www.cocoachina.com/ios/20150228/11206.html
这里我简单描述下 主要还是给我自己记忆的 如果大家感兴趣可以去看看这篇文章 http://www.cocoachina.com/ios/20150228/11206.html 或者去看官网https://guides.cocoapods.org/making/using-pod-lib-create.html
我的步骤和他们有些不同 所以有哪位兄弟按我的步骤不能完成 还是去看他们写的吧 因为可能是我们现在所处的环境不同
1. 在搭建好的git环境下面创建一个仓库文件
mkdir name 创建文件 git --bare init 初始化
2 . 创建一个类似于master的私有Spec Repo.
$ pod repo add name "https://coding.net/wtlucky/WTSpecs.git" 我这里直接copy的过来的 注意这里的name 和你文件的名字最好统一
此时如果成功的话进入到~/.cocoapods/repos目录下就可以看到name这个目录了。至此创建私有Spec Repo完成。
3.创建Pod的所需要的项目工程文件,并且有可访问的项目版本控制地址。
先cd到要创建项目的目录然后执行
pod lib create name name 为你的项目名称
这个时候他会问你一些问你 你的名字 你的邮箱
然后还要你选择几个选项 这里与cocoachain中的例子的选择一样
1.yes;
2.Specta/Expecta;
3.yes;
4.YY 第4点问你文件的前缀名这个你自己把握
这个完了后会给你创建一个工程 名字就是你刚刚的项目名字name
4.修改Pod所对应的podspec文件。
其实这个时候已经自动你创建好了.podspec 文件 上面步骤结束后打开的xcode 工程中有一个文件 在Podspec Metadata的文件夹下面有个以.podspec 结尾的文件
现在要修改这个文件
Pod::Spec.new do |s| s.name = "YPTest.iOS" s.version = "0.1.0" s.summary = "iOS文件 用于网络请求显示" s.description = <<-DESC iOS文件 用于网络请求显示 iOS文件 用于网络请求显示 iOS文件 用于网络请求显示 DESC s.homepage = "http://www.hn122.com" # s.screenshots = "www.example.com/screenshots_1", "www.example.com/screenshots_2" s.license = 'MIT' s.author = { "yangpingg" => "498158850@qq.com" } s.source = { :git => "ssh://192.168.1.105:/git/ICW/Git/YPTest.iOS", :tag => s.version.to_s } # s.social_media_url = 'https://twitter.com/<TWITTER_USERNAME>' s.platform = :ios, '7.0' s.requires_arc = true s.source_files = 'Classes/**/*' s.resource_bundles = { 'YPTest.iOS' => ['Pod/Assets/*.png'] } # s.public_header_files = 'Pod/Classes/**/*.h' # s.frameworks = 'UIKit', 'MapKit' # s.dependency 'AFNetworking', '~> 2.3' end
需要填写一些必要的信息。 具体的去看那篇文章 比较详细
这条信息 说下 s.source_files = 'Classes/**/*' 我这里是在我的根目录下面建了个Classes的文件夹然后把需要用cocoapod 管理的文件放到了里面去。这个地方就是通过 .podspec 去找你的源码在那里 。想必各位都看出来的 后面的*就是正则表达式中的字符。
然后你再cd 到改文件下 应该是要经过一个Example文件夹执行pod update命令
这个时候成功了应该就是可以用了 你可以在这个工程中测试下 你的库是不是可以正常使用。功能是不是都有。
5. 该项目添加并推送到远端仓库。
git add . git commit -s -m "Initial commit of Library" git remote add origin ssh://ssh://192.168.1.105:/git/ICW/Git/YPTest.iOS git push origin master
因为podspec文件中获取Git版本控制的项目还需要tag号,所以我们要打上一个tag
git tag -m "first release" "0.1.0"
这里的版本有和你刚刚在.podspec 中的版本号保持一致
git push --tags
这个时候你可以验证下是否正确
pod lib lint
当你看到时,说明验证通过了,不过这只是这个podspec文件是合格的,不一定说明这个Pod是可以用的,我们需要在本地做一下验证.
-> YPTest.iOS (0.1.0) YPTest.iOS passed validation.
这个想必大家都会就是在一个使用了 cocoapod 的项目中 的podfile 中添加测试下能不能用。
如果有人按我这个步骤弄,希望你玩的开心 。因为经常会越到错误。我也斗争的好久。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!