从开源 repo 创建 CocoaPods 库
Posted
技术标签:
【中文标题】从开源 repo 创建 CocoaPods 库【英文标题】:Create CocoaPods library from opensource repo 【发布时间】:2017-10-05 02:28:20 【问题描述】:我想在我的 ios 应用程序中使用 DEST library。我想通过 CocoaPods 包含它。
按照官方教程我这样编辑.podspec:
Pod::Spec.new do |s|
s.name = 'dest'
s.version = 'v0.8'
s.summary = ' One Millisecond Deformable Shape Tracking Library'
s.description = <<-DESC
Deformable Shape Tracking (DEST) is a C++ library providing high performance 2D shape tracking leveraging machine learning methods. The video below shows the real-time capabilities of DEST in annotating video sequences / still images with facial landmarks.
DESC
s.homepage = 'https://github.com/cheind/dest'
s.license = :type => 'BSD', :file => 'LICENSE'
s.author = 'cheind' => 'christoph.heindl@gmail.com'
s.source = :git => 'https://github.com/cheind/dest.git', :tag => "v0.8"
s.ios.deployment_target = '8.0'
s.source_files = 'dest/Classes/**/*'
end
但是当我运行pod lib lint
时,我有:
### Command
/usr/local/bin/pod lib lint
报告
你做了什么?
您预计会发生什么?
发生了什么?
堆栈
CocoaPods : 1.1.1
Ruby : ruby 2.0.0p648 (2015-12-16 revision 53162) [universal.x86_64-darwin16]
RubyGems : 2.0.14.1
Host : Mac OS X 10.12.3 (16D32)
Xcode : 8.3.2 (8E2002)
Git : git version 2.11.0 (Apple Git-81)
Ruby lib dir : /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 4076e32f9f51026e071e398117df63084ee3fbae
插件
cocoapods-deintegrate : 1.0.1
cocoapods-plugins : 1.0.0
cocoapods-search : 1.0.0
cocoapods-stats : 1.0.0
cocoapods-trunk : 1.1.1
cocoapods-try : 1.1.0
错误
```
ArgumentError - 格式错误的版本号字符串 v0.8
/Library/Ruby/Gems/2.0.0/gems/cocoapods-core-1.1.1/lib/cocoapods-core/version.rb:52:in initialize'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-core-1.1.1/lib/cocoapods-core/vendor/version.rb:199:in
new'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-core-1.1.1/lib/cocoapods-core/vendor/version.rb:199:in new'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-core-1.1.1/lib/cocoapods-core/specification/root_attribute_accessors.rb:31:in
version'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-core-1.1.1/lib/cocoapods-core/specification/linter.rb:109:in block in check_required_attributes'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-core-1.1.1/lib/cocoapods-core/specification/linter.rb:108:in
each'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-core-1.1.1/lib/cocoapods-core/specification/linter.rb:108:in check_required_attributes'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-core-1.1.1/lib/cocoapods-core/specification/linter.rb:50:in
lint'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.1.1/lib/cocoapods/validator.rb:281:in perform_linting'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.1.1/lib/cocoapods/validator.rb:78:in
validate'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.1.1/lib/cocoapods/command/lib/lint.rb:62:in block in run'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.1.1/lib/cocoapods/command/lib/lint.rb:50:in
each'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.1.1/lib/cocoapods/command/lib/lint.rb:50:in run'
/Library/Ruby/Gems/2.0.0/gems/claide-1.0.1/lib/claide/command.rb:334:in
run'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.1.1/lib/cocoapods/command.rb:50:in run'
/Library/Ruby/Gems/2.0.0/gems/cocoapods-1.1.1/bin/pod:55:in
'
/usr/local/bin/pod:23:in load'
/usr/local/bin/pod:23:in
'
我做错了什么?
【问题讨论】:
【参考方案1】:版本字符串不应包含“v”。它应该是“0.8”,而不是“v0.8”。更多关于 podspec 版本规范here
【讨论】:
以上是关于从开源 repo 创建 CocoaPods 库的主要内容,如果未能解决你的问题,请参考以下文章