组件库(私有库)维护---遇到的问题以及解决方案

1.Error:[iOS] xcodebuild: Returned an unsuccessful exit code错误解决方式:

我们在执行pod lib lint(校验本地库) 和 pod spec lint (校验远端库)或者

pod repo push <repo-name> <podspec-file-name>.podspec(上报索引文件)

的时候会在执行了--verbose之后出现在某一个目录下报错。而且没有明显的引用问题,或者代码问题之后。

很有可能是我们在依赖的库文件中有使用静态库或者是framework。而我们在依赖的时候也要加上这些资源引用。即在之后加上--use-libraries

 

说明:

(1)--verbose:表示显示全部的日志信息,建议加上这个,方便判断错误信息。

(2)--sources:如果我们在podspec里面依赖到一些私有的库之后,直接进行校验是会报错的提示找不到,这里加上我们的Spec仓库的地址告诉CocoaPods找不到的时候去哪里找。

(3)--allow-warnings:表示允许警告.

(4)--use-libraries:表示使用静态库或者是framework,这里主要是解决当我们依赖一些framework库后校验提示找不到库的时候用到。

 

2.The repo `xxxxx` at `../../../../../.cocoapods/repos/xxxx is not clean

最近搞私有仓库做模块化的时候,当我们执行

pod repo push xxxx xxxx.podspec

对于远端数据没有清理干净和本地索引库冲突的时候可能会有这个问题。

那么我们就需要同步一下数据:

需要 update 一下本地库就执行下面的命令

pod repo update [xxxx]

如果这样还不行的话,那么就删除私有索引库连接,重新创建:

执行下面的操作清理:

pod repo remove [xxxx]

执行完毕再次执行添加

pod repo add [xxx] [xxx]

最后成功添加!

 

3.使用私有库要注意的tips

 

4.对于纯framework的形式包操作注意事项:

这两处的编写需要注意。(路径是和spesc的同路径下开始的。比如PFTestEat是和spesc文件同级的文件夹)

 

5. 私有库中常用到的终端命令

git命令

git add .//添加文件到缓冲区
git commit -m "描述"//从缓冲区提交代码到仓库
git tag -a '0.0.1'  -m '描述'//添加tag
git tag //查看tag
git tag -d '0.0.1'//删除tag
git remote add origin https://github.com/xxx.git//关联本地仓库和远程仓库。
git push -f origin master//将本地库的代码推到远程库
git push --tags//将本地创建的tag推到远程库
git push origin :0.0.1//删除tag

终端命令:

pod repo //查看本地远端索引库(本地的地址和远端的地址)
pod repo add [repo] [repo.git地址]//建立本地远端索引库
pod spec create XTProtocolManager//生成pod库配置文件
pod init//生成Podfile
pod lib lint//验证本地lib
pod spec lint//远端校验
pod repo push [repo] [podspec] 
pod repo push [repo] [podspec]  --verbose --allow-warnings

6.部分其他framework包问题参考文章

iOS开发之Framework上传到Cocoapods看我应该够了!个人觉得这篇文章写得挺好的。供借鉴

 

7.

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章