在 Xcode 7 中,我怎样才能拥有同名的静态库目标和框架目标?

In Xcode 7 how can I have a static lib target and a framework target with the same name?

我正在尝试转换现有的 GitHub 存储库(RMStore, but it could apply to any repo) to be compatible with Carthage。这需要将框架目标添加到 Xcode 项目。我希望生成的框架被称为 RMStore.framework,但是我无法为名为 RMStore 的 Xcode 项目创建一个新目标,因为已经有一个具有该名称的目标,它构建了一个静态库(而且我不想摆脱那个目标)。

我创建了一个名为 RMStoreFramework 的新目标,但生成的框架名为 RMStoreFramework.framework,这不是我想要的。 那么,有没有办法:

  1. 创建两个同名的目标,或者,
  2. 使生成的框架名称与目标名称不同?

我自己还没有尝试过,但我认为您可以将生成的框架更改为与脚本不同的名称。

您可以更改生成的框架的名称。在 Build Settings -> Product Name,您可以选择您想要的名称。

这种模式可以在支持 Carthage 并同时支持 iOS 和 Mac 平台的项目中看到。