2015-11-04 52 views
5

在我的ios应用程序中,我试图区分环境,使Web API调用适当的环境(Development,StagingProduction)。iOS - 自定义配置 - “没有这样的模块”

对于我创建了一个configuration.plist文件,为每个环境的不同端点和:

  • 重复的的Debug配置并把它称为Development Build
  • 创建 称为Development一个新的方案(复制的Debug方案),并在信息选项卡(Run部分)选择了Development Build 配置。

当我在调试模式下运行,一切正常运行。

我使用可可豆荚。

如果我选择Development方案,我得到一个No such module 'JazzHands'

如果我编辑Development方案使用Debug构建,它工作正常。

所以我必须失去一些东西这不工作。

+0

的可能的复制[斯威夫特框架不叫不是“调试”或“发行”等构建配置工作:没有这样的模块(HTTP ://sackoverflow.com/questions/26073088/swift-frameworks-do-not-work-with-build-configurations-named-other-than-debug) – Mazyod

+0

看起来确实如此。 –

回答

7

对于运行到这个问题,尝试pod install这会产生与你的配置名称一些.xcconfig文件。清理你的构建文件夹并重新构建。

这个工作对我的CocoaPods 1.0

0

解决方法:

创建JazzHands

根源相同的自定义生成配置:

  • 编译错误No such module被抛出,因为它可以为您的自定义构建配置找到JazzHands

背景:

  • 每次编译一个文件夹中创建DerivedData
  • 此文件夹对应于您的设备/模拟器和您的应用程序。
  • 此文件夹中会出现一个Build文件夹这将包含对应为您的项目中每个生成配置文件夹。
  • 在你的情况Development文件夹不会包含框架JazzHands二进制
  • 然而Debug夹将包含框架JazzHands二进制

实施例:

下面给出的是一个例子:

~/Library/Developer/Xcode/DerivedData/SomeApp-skjahjkdhsakjhdaskjdhaskjlhs/Build/Development-iphonesimulator

  • SomeApp - 应用
  • 发展的名称 - 自定义生成配置