2

複数の iOS アプリで使用される小さなライブラリを作成しました。

私は自分の知る限りで仕様を構成しましたが、うまくいくと思いますが、そうではありません。

仕様は次のとおりです。

Pod::Spec.new do |s|                                                                                                                                    
  s.name                  = 'TheLib'                                                                                                                  
  s.version               = '1.0.0'                                                                                                                     
  s.ios.deployment_target = '5.0'                                                                                                                       
  s.source_files          = 'Source/**/*.{h,m}'                                                                                                         
  s.resources             = 'Source/View/Storyboard/*.storyboard'                                                                                       
  s.dependency     'AFNetworking', '~> 1.3.3'                                                                                                           
  s.dependency     'SDWebImage', '~> 3.5'                                                                                                               
  s.dependency     'FrameAccessor', '~> 1.2.0'                                                                                                          
  s.dependency     'NSDate+TimeAgo', '~> 1.0.2'                                                                                                         
end 

ルートには単に仕様とソース ディレクトリが格納され、後者には .h と .m のディレクトリが含まれます。

を実行するpod spec lintと、次のようになります。

――― MARKDOWN TEMPLATE ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

### Report

* What did you do?

* What did you expect to happen?

* What happened instead?


### Stack

```
   CocoaPods : 0.26.2
        Ruby : ruby 1.8.7 (2012-02-08 patchlevel 358) [universal-darwin13.0]
    RubyGems : 2.0.3
        Host : Mac OS X 10.9 (13A603)
       Xcode : 5.0.1 (5A2053)
Ruby lib dir : /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib
Repositories : master - https://github.com/CocoaPods/Specs.git @ 50abc95a6583527b26b4f80c0a1e4e77052511ba
```

### Error

```
TypeError - can't dup NilClass
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer/pod_source_installer.rb:149:in `dup'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer/pod_source_installer.rb:149:in `downloader'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer/pod_source_installer.rb:101:in `download_source'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer/pod_source_installer.rb:64:in `install!'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer.rb:263:in `install_source_of_pod'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer.rb:237:in `install_pod_sources'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/user_interface.rb:73:in `titled_section'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer.rb:236:in `install_pod_sources'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer.rb:234:in `each'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer.rb:234:in `install_pod_sources'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer.rb:103:in `download_dependencies'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/user_interface.rb:52:in `section'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer.rb:101:in `download_dependencies'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/installer.rb:87:in `install!'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/validator.rb:209:in `install_pod'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/validator.rb:177:in `perform_extensive_analysis'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/validator.rb:173:in `each'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/validator.rb:173:in `perform_extensive_analysis'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/validator.rb:63:in `validate'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/command/spec.rb:83:in `run'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/command/spec.rb:78:in `each'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/command/spec.rb:78:in `run'
/Library/Ruby/Gems/1.8/gems/claide-0.3.2/lib/claide/command.rb:206:in `run'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/lib/cocoapods/command.rb:51:in `run'
/Library/Ruby/Gems/1.8/gems/cocoapods-0.26.2/bin/pod:19
/usr/bin/pod:23:in `load'
/usr/bin/pod:23
```

――― TEMPLATE END ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――

[!] Oh no, an error occurred.

Search for existing github issues similar to yours:
https://github.com/CocoaPods/CocoaPods/search?q=can%27t+dup+NilClass&type=Issues

しかし、その GitHub ページの 3 つの投稿を読んでも、答えは得られません。ソースが追加されていないかのようです (NilClass?)。

pod installこのポッドファイルを使用して、ライブラリを使用するプロジェクトディレクトリで実行すると:

pod 'TheLib', :path => '../TheLib' 

ワークスペースを開くと、Xcode にはすべての deps が正しくインストールされていますが、「TheLib」ディレクトリを含む「Development Pods」というディレクトリがあり、4 つのダミー ファイルしかありません。

ここに見られるように:

開発ポッド

4

1 に答える 1

0

pod spec lintデフォルトでは、ローカル プロジェクトを使用せずに、リモート ソースからコードをダウンロードすることで機能します。

あなたが投稿したバックトレースは、メソッドで例外がスローされていることを示していますinstall_source_of_pod。これは後で呼び出しdownload_sourceています。これは、リモート ソースからプロジェクトをダウンロードしようとしている可能source性があります。仕様の属性をまだ指定していないため、失敗しています。

有効source属性を指定すると、この特定のエラーが修正されます。

于 2013-11-05T00:41:28.790 に答える