Podspec 验证错误 - 文件模式:规范为空
Posted
技术标签:
【中文标题】Podspec 验证错误 - 文件模式:规范为空【英文标题】:Podspec validation error - File Patterns: The spec is empty 【发布时间】:2016-09-21 09:25:05 【问题描述】:我正在尝试再次创建我的第一个 pod。我很久以前试过这个,我记得一年前,那次我也遇到了类似的错误。
以下代码显示了我的project.podspec
文件的样子,我不知道我在这里错过了什么,CocoaPods
只是对我大喊大叫,说podspec
文件中有一些问题。
Pod::Spec.new do |s|
s.name = 'MyProject'
s.version = '0.1.0'
s.platform = :ios, '9.0'
s.license = 'MIT'
s.summary = 'Something Blah Blah'
s.homepage = 'https://github.com/alvinvarghese/MyProject'
s.author = 'Alvin Varghese' => 'my email'
s.source = :git => 'https://github.com/alvinvarghese/MyProject.git', :tag => s.version.to_s
s.description = 'Blah Blah Blah BlahBlah BlahBlah BlahBlah BlahBlah Blah Blah Blah' \
'Blah Blah'
s.frameworks = 'UIKit', 'Foundation'
s.social_media_url = 'https://twitter.com/aalvinv'
s.ios.deployment_target = '9.0'
# s.resource_bundles =
# 'dummy' => ['dummy/Assets/*.png']
#
s.public_header_files = 'Pod/Classes/**/*.h'
s.frameworks = 'UIKit', 'Foundation'
# s.dependency 'AFNetworking', '~> 2.3'
end
我什至不知道它是如何工作的,当我运行 pod trunk push --allow-warnings
时,我得到了这个错误。
Alvin-The-Robot:MyProject Alvin$ pod trunk push --allow-warnings
[!] Found podspec `MyProject.podspec`
Updating spec repo `master`
Validating podspec
-> MyProject (0.1.0)
- ERROR | [iOS] File Patterns: The MyProject (0.1.0) spec is empty (no source files, resources, resource_bundles, preserve paths, vendored_libraries, vendored_frameworks, dependencies, nor subspecs).
- ERROR | [iOS] unknown: Encountered an unknown error (The `MyProject` pod failed to validate due to 1 error:
- ERROR | [iOS] File Patterns: The MyProject (0.1.0) spec is empty (no source files, resources, resource_bundles, preserve paths, vendored_libraries, vendored_frameworks, dependencies, nor subspecs).
) during validation.
[!] The spec did not pass validation, due to 2 errors.
让我知道你的想法,我做错了什么吗?我错过了什么吗?
还有其他一些可能有用的东西。 git repo 有相同的 0.1.0 标签。
Alvin-The-Robot:MyProject Alvin$ git tag
0.1.0
提前谢谢你们。
【问题讨论】:
对于来源:https://github.com/alvinvarghese/MyProject.git
而不是https://github.com/alvinvarghese/MyProject
?
@Larme 抱歉,这是我写问题时的输入错误。实际上它在 podspec 文件中有后缀 .git 。感谢您指出,我已经更新了问题。
你的 github 仓库有“0.1.0”标签吗?
【参考方案1】:
您似乎忘记包含 source_files
定义(或 vendored_frameworks
,如果您正在制作闭源 pod)。您应该在 podspec 中添加如下一行:
s.source_files = "MyProject/**/*.h,m"
请参阅 this 以获取最小工作 podspec 的示例。
【讨论】:
让我检查一下,等一下。 - 错误 | [iOS] 文件模式:source_files
模式与任何文件都不匹配。 - 错误 | [iOS] 文件模式:public_header_files
模式与任何文件都不匹配。
你这里的“ExampleLib”应该换成我的pod名称吧?这就是我所做的,同样的错误。
它应该是一个匹配您的文件相对于 repo 根目录的位置的模式。 source_files
的语法参考在这里:guides.cocoapods.org/syntax/podspec.html#tab_source_files。另请参阅我的更新答案
是的,我认为这解决了与 podspec 文件相关的问题,现在有些事情发生了。告诉我在 GitHub CocoaPods 中添加一个新问题。以上是关于Podspec 验证错误 - 文件模式:规范为空的主要内容,如果未能解决你的问题,请参考以下文章
尝试运行“pod trunk push [cocoapod].podspec”时出错