目标是:
>使用Podspecs的私人仓库
>让框架以二进制形式分发(与源代码相对)
我已经读过CocoaPods frameworks,Making a CocoaPod以及其他参考文献(似乎不能包含超过2个具有当前SO声誉的链接,但我可以在评论中指出来源).
我正在使用的Podspec是:
Pod::Spec.new do |s|s.name = 'SDK's.version = '0.0.1's.summary = 'My SDK's.description = 'SDKs description's.homepage = 'https://github.com/XXX/sdk's.license = { :type => 'MIT',:file => 'liCENSE' }s.author = { 'XXX' => '[email protected]' }s.source = { :git => 'https://github.com/XXX/sdk.git',:tag => s.version.to_s }s.ios.deployment_target = '8.0's.platform = :ios,'9.0's.source_files = 'SDK/Classes/**/*'s.preserve_paths = 'Frameworks/SDK.framework's.ios.vendored_frameworks = 'Frameworks/SDK.framework'end
除了标准(arm64,armv7)之外,Pods xcode项目也被改为构建i386 arch.
如果我将SDK.framework文件复制到.podspec文件夹中的/ Frameworks文件夹,则此规范在本地成功验证:
pod lib lint
问题:当我尝试将规范推送到repo时,验证失败,如下面的输出所示:
pod repo push mySDKPrivateRepo SDK.podspec ValIDating spec -> SDK (0.0.1) - ERROR | [iOS] file patterns: The `source_files` pattern dID not match any file. - ERROR | file patterns: The `preserve_paths` pattern dID not match any file. - ERROR | [iOS] file patterns: The `vendored_frameworks` pattern dID not match any file.[!] The `SDK.podspec` specification does not valIDate.
问题:
>将podspec验证推送到repo时,如何使podspec验证成功?
其他说明:
>将SDK.framework复制到/ Frameworks可手动运行.
>如果我在Pods Xcode项目中包含“复制文件”构建步骤,则不会复制该文件.
>使用CocoaPods 1.1.0.
请务必检查您指向source_files的目录.我发现以这种方式维护任何类型的结构都非常困难,并且将所有文件包含在单个文件夹中更容易.
s.source_files = '<Insertname>/**/Classes/*'
在File Patters上查看cocoapods建议,以获得一些帮助.
通过一个消除过程,我建议首先尝试在podspec中推送回复注释掉source_files,并从那里开始前进.
总结以上是内存溢出为你收集整理的swift – Cocoapods – podspec验证但不能推送回购全部内容,希望文章能够帮你解决swift – Cocoapods – podspec验证但不能推送回购所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)