このspecファイルで構文エラーが発生しています。
Pod::Spec.new do |s|
s.name = "BSImageLoader"
s.version = "0.1.3"
s.summary = "The image loading framework for PicPoc"
s.homepage = "https://bitbucket.org/boolalsofware/bsimageloader"
s.license = 'MIT'
s.author = { "Spencer Comerford" => "[email protected]" }
s.source = { :git => "[email protected]:boolalsofware/bsimageloader.git", :tag => "0.1.3" }
s.source_files = 'Classes/*.{h,m}', 'Classes/PublicHeaders/*'
s.public_header_files = 'Classes/PublicHeaders/*.h'
s.dependency = 'BSTiledImageView', :git => '[email protected]:boolalsofware/bstiledimageview.git'
s.frameworks = 'QuartzCore', 'AssetsLibrary', 'UIKit'
s.requires_arc = true
end
問題は、bitbucketリポジトリを指す依存関係にあります。私はこれをローカルの依存関係で動作するようにしましたが、何らかの理由でgitリポジトリを使用すると動作しません。助けてくれてありがとう!
Podspec DSLのdependency
ディレクティブは、依存関係の名前とオプションのバージョン要件のみをサポートします。 :git
オプションはサポートされていません。 Podfileで使用することも、マスターリポジトリに加えてカスタムプライベートリポジトリを使用することもできます。
私は同じ問題に直面し、 古い方法でこの問題を解決する別の方法 (@eliperkinsに感謝)があることを発見しました。
あなたがメインプロジェクトDownloader
を持っているとします。これは、より小さなプロジェクトPlayer
を使用します。これは、マイクロプロジェクトFFMpegPlayer
に依存します。したがって、あなたが望むのはPlayer.podspec
に依存関係を持つことです。これは次のようになります。
s.dependency = 'FFMpegPlayer', :git => '...FFMpegPlayer.git' or
s.dependency = 'FFMpegPlayer', :local => '../FFMpegPlayer'
s.dependency = 'FFMpegPlayer', :path => '../FFMpegPlayer'
s.dependency = 'FFMpegPlayer', :podspec => '../FFMpegPlayer/FFMpegPlayer.podspec'
しかし、すべてのはPodsの最新バージョンでは機能しません。:local
はv0.17.1
までの副作用として機能していました。
これから、Player.podspec
で完全な依存関係を指定できます。
s.dependency = 'FFMpegPlayer' (its ok if that spec does not exist in public)
Podfile
のDownloader
(メインプロジェクト)では、FFMpegPlayer
beforePlayer
podを指定するだけです。
pod 'FFMpegPlayer', :path => '../FFMpegPlayer' (micro project)
pod 'Player', :path => '../Player' (small project which depends on FFMpegPlayer)
したがって、基本的に、すべてのサブポッドはメインのポッドファイルにリストされるようになり、ポッドのバージョン間の競合がないことが保証されます。