美文网首页
CocoaPods 私有库 pod lib lint 踩坑

CocoaPods 私有库 pod lib lint 踩坑

作者: 一次路过 | 来源:发表于2022-10-27 18:12 被阅读0次

    1.对于不支持模拟器的组件,在进行验证时需要跳过模拟器验证

    在podSpec文件中添加:

    s.pod_target_xcconfig = { 'VALID_ARCHS[sdk=iphonesimulator*]' => ' ' } 

    2.pod lib lint 出现download相关错误时,可以通过设置source的方式解决

    pod lib lint XXX.podspec  --sources='https://github.com/CocoaPods/Specs.git' --no-clean  --use-libraries  --allow-warnings

    3.ERROR |[iOS]xcodebuild: Returned an unsuccessful exit code.

    3.1添加--verbose参数,查看是否有其他的错误,如果有其他的错误,先解决其他的错误。该错误可能是因为有其他的错误存在才出现的

    3.2对于OC私有库,检查是否是在.h文件中有对其他组件库有import,解决方案是,移除.h文件的依赖或者pod lib lint验证命令新增参数 --skip-import-validation

    pod lib lint OKBaseModules.podspec  --sources='https://github.com/CocoaPods/Specs.git' --no-clean  --use-libraries  --allow-warnings  --skip-import-validation

    3.3 - ERROR | [XXX/NetWorkManager, XXX/UserProfile, XXX/SSO, and more...] xcodebuild: Returned an unsuccessful exit code.

    蜜汁错误。实在查找不到错误原因,编译Example工程也出错,前往文件夹 ~/资源库/Developer/Xcode/DerivedData 清理DerivedData文件夹下内容,重启Xcode,注释子组件,重新打开执行Pod install 操作后,再重新执行pod lib lint 验证通过。

    4.[iOS] file patterns: The `source_files` pattern did not match any file

    4.1检查路径是否真的错误

    4.2如果路径确定无误,

    1、前往文件夹:/用户/用户名/资源库/Caches/CocoaPods/Pods/External

    图1

    点击你的组件,找到最近一次编译记录,查看文件目录是否与工程下一致。如果不确定哪次是最新的编译记录,建议全删除,再重新编译一次即可。

    图2

    2、修改文件路径与组件库路径一致,再重新执行验证命令即可。参考连接

    5.关于静态库

    s.static_framework = true # 是否包含静态库框架(注意:不能写在subspec子模块中)

    6.私有库B引用了私有库A,需要在私有库B生成的Example工程的Podfile中添加source,地址为私有库A的git地址,pod lib lint命令新增source参数,地址为私有库A的git地址,如果有多个私有库,使用“逗号”分割

    图3

    7. no such module 'AgoraRtcKit'

     - NOTE  | [XXX/LiveEngine] xcodebuild:  warning: [CP] AgoraRtcKit.xcframework: Unable to find matching slice in 'ios-arm64_x86_64-simulator ios-arm64_armv7' for the current build architectures (arm64 x86_64 i386) and platform (-iphonesimulator).

    图4 图5

    Example工程可以正常运行,执行pod lib lint命令报错no such module 'AgoraRtcKit',前往文件夹 ~/资源库/Developer/Xcode/DerivedData 清理DerivedData文件夹下内容

    进行如下配置【参考链接】:

    图6

    8.pod spec lint 错误 Error installing XXX

    [!] Error installing XXX

     -> XXX (0.2)

        - ERROR | [iOS] unknown: Encountered an unknown error ([!] /usr/bin/git clone https://git.XXX.com/ioscomponent/XXX.git /var/folders/w1/4_s0vnhj03q5vdy0mjj6zsmh0000gn/T/d20221025-82813-sppbbl --template= --single-branch --depth 1 --branch 0.2

    Cloning into '/var/folders/w1/4_s0vnhj03q5vdy0mjj6zsmh0000gn/T/d20221025-82813-sppbbl'...

    warning: Could not find remote branch 0.2 to clone.

    fatal: Remote branch 0.2 not found in upstream origin

    嗯,仔细检查发现,podspec文件里的s.source对应的git地址粘错了。遇到错误不要慌,查看错误信息,检查相关文件。

    9.fatal: Remote branch 0.0.1 not found in upstream origin

    Cloning into '/var/folders/w1/4_s0vnhj03q5vdy0mjj6zsmh0000gn/T/d20221101-39353-1gfheuc'...

    warning: Could not find remote branch 0.0.1 to clone.

    fatal: Remote branch 0.0.1 not found in upstream origin

    也就是在编辑podspec 时, 里面的字段 s.versons.source 中的 taggithub创建的release版本号不一致导致, 修改为一样即可!

    10.[!] The repo `XXXX` at `../../../../.cocoapods/repos/XXXX` is not clean

    1.移除本地私有索引库:pod repo remove XXXX

    2.添加本地私有索引库:pod repo add XXXX 索引库地址

    3.push本地podspec到远端索引库:pod repo push XXXX XX.podspec --参数

    相关文章

      网友评论

          本文标题:CocoaPods 私有库 pod lib lint 踩坑

          本文链接:https://www.haomeiwen.com/subject/qjvazrtx.html