MeetYouDevs / cocoapods-imy-bin

1.05k stars 245 forks source link

二进制制作报错 #64

Closed huainanzi closed 3 years ago

huainanzi commented 3 years ago

CocoaPods : 1.10.0 Ruby : ruby 2.7.0p0 (2019-12-25 revision 647ee6f091) [x86_64-darwin19] RubyGems : 3.1.2 Host : Mac OS X 10.15.4 (19E287) Xcode : 12.2 (12B45b) Git : git version 2.24.3 (Apple Git-128) Ruby lib dir : /Users/qiyeyun2/.rbenv/versions/2.7.0/lib

TypeError - no implicit conversion of nil into String /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/command/bin/archive.rb:164:in exist?' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/command/bin/archive.rb:164:inblock (2 levels) in generate_project' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/native/podfile_env.rb:29:in execute_with_key' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/native/podfile_env.rb:22:inexecute_with_use_binaries' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/command/bin/archive.rb:155:in block in generate_project' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/native/podfile_env.rb:29:inexecute_with_key' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/native/podfile_env.rb:14:in execute_with_bin_plugin' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/command/bin/archive.rb:154:ingenerate_project' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/command/bin/archive.rb:70:in run' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/command/bin/auto.rb:126:inrun_archive' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-imy-bin-0.3.0.11/lib/cocoapods-imy-bin/command/bin/auto.rb:54:in run' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/claide-1.0.3/lib/claide/command.rb:334:inrun' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-1.10.0/lib/cocoapods/command.rb:52:in run' /Users/qiyeyun2/.rbenv/versions/2.7.0/lib/ruby/gems/2.7.0/gems/cocoapods-1.10.0/bin/pod:55:in<top (required)>' /Users/qiyeyun2/.rbenv/versions/2.7.0/bin/pod:23:in load' /Users/qiyeyun2/.rbenv/versions/2.7.0/bin/pod:23:in

'

huainanzi commented 3 years ago

截屏2020-12-24 下午2 47 00 我发现是当前目录下不存在podfile文件导致。但是我有一个疑问是我们用Pod lib create创建的私有库目录结构是这样的: 截屏2020-12-24 下午2 52 11 就是podfile和podspec不在统一路径下。如果我要生成二进制。我是需要将podspec放到podfile同级目录下吗?

su350380433 commented 3 years ago

podspec需要放到podfile同级目录下

huainanzi commented 3 years ago

还有一个疑问,组件化后都是私有pod库的形式存在。我想把某个组件库二进制化。存在一个问题是依赖的第三库可以打包成二进制。而development Pods中本身的组件并不能生成二进制。 截屏2020-12-25 上午9 46 25 如果我要将该组件二进制。是不是需要我要先将该组件发布后。再需要一个壳工程。在壳工程中依赖该组件。在壳工程中将组件二进制化。是不是这样的?还请大佬给予指点

su350380433 commented 3 years ago

development Pods 是不能的

huainanzi commented 3 years ago

development Pods 是不能的

那是需要我要先将该组件发布后。再需要一个壳工程。在壳工程中依赖该组件。在壳工程中将组件二进制化。

su350380433 commented 3 years ago

development Pods 正常是在开发下才使用,打包工程还使用development Pods?

huainanzi commented 3 years ago

嗯,明白了。还发现一个问题是: set_use_source_pods 这个命令设置某个库二进制转源码并不能生效。

su350380433 commented 3 years ago

bug

huainanzi commented 3 years ago

好吧,作者能否开个群,大家可以共同交流下。😁