使用Carthage和Cocoapods管理项目

关于Carthage和Cocoapods基础部分就不做过多的说明。不懂的同学去搜索即有。我要说的是自己在使用两个依赖工具管理项目的一点心得。

1.Cocoapods创建私有库

私有库创建完成后,我们可以根据自己的需求podfile或者.podspec文件中添加私有库所需要的支持库,私有库完成后,我们需要让所有Schemes的 shared被选中,如下图1所示:


图1

2.构建私有库

Carthage 只构建从.xcodeproj分享出来的 Xcode schemes。使用Terminal进入到私有库目录,可以通过运行carthage build --no-skip-current来检测所有的 intended schemes 是否构建成功,然后检查 Carthage/Build 文件夹。

如果运行命令的时候,一个重要的 scheme 没有构建成功,打开 Xcode 确保scheme is marked as “Shared”,这样 Carthage 可以发现它。

3.上传私有库到git

不上传 在cartfile 中引用本地项目进行 carthage update 时会报

***Skipped building XXX due to the error:

Dependency "XXX" has no shared framework schemes

原因不明(应该是跟.podspec文件中默认生成的git有关)。

大家可以根据自己的需求上传到服务器但是要注意 .podspec 文件中的

s.homepage= 'https://xxxx'

s.author= { 'Author' => 'account' }

s.source= { :git => 'git', :tag => s.version.to_s }

三个地方配置正确,不正确的话也会因为Permission问题出现错误。

上传成功后,Carthage、Cocoapods都可以使用git地址依赖管理。

4.Carthage使用依赖私有库

在Cartfile中添加git地址

git "https://enterprise.local/desktop/git-error-translations2.git" "development"

运行 carthage update,成功后在 target-> Build Phases -> Link Binary With Libraries 添加引用的framework,在target-> Build Phases-> Run Script 添加framework引用路径。

在需要引入的地方导入头文件就可以了。

你可能感兴趣的:(使用Carthage和Cocoapods管理项目)