プライベートコードに基づいたローカルpodspecを作成したいと思います。 'source'属性が機能していないため、使用できないようです。 'source_files'属性を使用できますが、ファイルが再帰的に含まれていません。したがって、次のようなディレクトリを使用します
Library
/src
/Core
/Audio
/Graphics
そして私のpodspecは次のようになります:
Pod::Spec.new do |s|
...
s.source = 'src' # this does not work.
s.source_files = 'src' # this only includes the files in src, and not in any of the Core, Audio or Graphics folders.
'-r'フラグを指定したいのですが。ワイルドカードを使用してみましたが、うまくいきませんでした。
source_files
属性は Rubyファイルグロブ構文 を使用します。パターンはプロジェクトのルート(つまり、podspecファイル)を基準にしている必要があるため、これでうまくいくはずです。
s.source_files = 'Library/src/**/*.{h,m}'
source
属性は、ソースコードファイル用ではなく、コードを取得する必要のあるリモートリポジトリ(最も一般的にはGitリポジトリのURLとタグ)用です。詳細については、 CocoaPods仕様ドキュメント を参照してください。
CocoaPods
[約]
spec.source_files = 'Classes/**/*.{h,m,Swift}', 'More_Classes/**/*.{h,m,Swift}'
ファイルパターン:
*
-任意のファイルに一致します。**
-ディレクトリを再帰的に照合します。?
-任意の1文字に一致します。[set]
-セット内の任意の1文字に一致します。{p,q}
-リテラルpまたはリテラルqのいずれかに一致します。\
-次のメタ文字をエスケープします。ファイルパターン
Podspec
はリポジトリのルートに配置する必要があり、ファイルへのパスもリポジトリのルートを基準にして指定する必要があります。ファイルパターンには、次のワイルドカードパターンが含まれる場合があります。
*
-任意のファイルに一致します。**
-ディレクトリを再帰的に照合します。?
-任意の1文字に一致します。[set]
-セット内の任意の1文字に一致します。{p,q}
-リテラルpまたはリテラルqのいずれかに一致します。\
-次のメタ文字をエスケープします。`source_files-ポッドのソースファイル。
spec.source_files = 'Classes/**/*.{h,m}', 'More_Classes/**/*.{h,m}'
続きを読む ここ