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

3
我用Cocoapods创建了一个私人库,该库具有一个依赖。当我在我的Xcode项目中使用这个库时,在运行pod install之后,Xcode的方案现在默认为“MyPodName (Pods Project)”而不是我的应用程序目标。这有点烦人,因为每次运行pod install时,我都必须去改变方案,因为不同的分支可能会对Podfile.lock产生影响。我使用 pod lib create 生成的Cocoapods骨架创建了我的库。这是我的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

我认为这可能只发生在我的电脑上。同事说他没有遇到过这个问题。

我和我的同事们都遇到了同样的问题。我目前正在研究的方向是让 pod 在生成方案时停止操作,因为我认为这些方案并不必要。如果必须创建方案,我希望能取消选中“显示”选项(在管理方案中可见)。 - aednichols
1个回答

2
Cocoapods开发人员在此拉取请求中添加了共享开发pod方案的功能,引入了这种行为。你的同事可能使用的是早期版本的Cocoapods,因为该PR仅在2015年5月合并。
pod 生成的方案被设置为共享和可见,并且没有可用的选项来更改此行为。我们不是唯一遇到此问题的人(123)。
一位Cocoapods开发者随后发布了一个插件(plugin),旨在移除方案(字面上通过rm-ing共享方案在创建后)。我说“旨在”,因为根据提供的说明,我还没有弄清楚如何使事情正常工作。
编辑:同一开发人员现在确认该插件可能无法按预期工作。

同事使用相同版本。 - shim

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接