Cocoapods pod创建目标,并在使用时更改Xcode中的目标

时间:2016-03-08 21:56:01

标签: ios xcode cocoapods

我用Cocoapods创建了一个私有pod。该pod具有依赖性。

当我在我的Xcode项目中使用此pod时,Xcode的方案现在默认为“MyPodName(Pods Project)”而不是我的应用程序的目标后运行pod install。这有点令人讨厌,因为我每次运行pod install时都必须更改方案,因为Podfile.lock

中的不同分支可能有差异

我使用pod lib create生成的Cocoapods骨架创建了我的Pod。

这是我的podspec:

Pod::Spec.new do |s|
  s.name             = "MyPodLib"
  s.version          = "2.0.0"
  s.summary          = "MyPodLib is just an example name for this question."

  s.description      = <<-DESC
                       DESC

  s.homepage         = "https://github.com/username/MyPodLib"
  s.license          = 'License'
  s.author           = { "username" => "email@address.com" }
  s.source           = { :git => "https://github.com/username/MyPodLib.git", :tag => s.version.to_s }

  s.platform     = :ios, '8.4'
  s.requires_arc = true

  s.source_files = 'Pod/Classes/**/*'
  s.resource_bundles = {
    'MyPodLib' => ['Pod/Assets/*.png']
  }

  s.dependency 'DependencyPod', '2.0.0'
end

我认为这可能只发生在我的电脑上。同事说不会发生在他身上。

1 个答案:

答案 0 :(得分:2)

当Cocoapods开发人员在this pull request中添加了开发窗格的方案共享时,他们引入了这种行为。您的同事可能一直在使用早期版本的Cocoapods,因为该PR仅在2015年5月合并。

pod生成的方案设置为共享和可见,并且没有可用于更改此行为的选项。我们不是唯一遇到此问题的人(123)。

一位Cocoapods开发人员随后发布了一个plugin,它应该删除这些方案(字面意思是rm-ing创建后的共享方案。我说应该,因为我还没有弄清楚如何根据提供的指示使事情发挥作用。

编辑:现在同一个开发人员confirms,插件可能无法按预期工作。