如何修改SWIFT_MODULE_NAME?

标题说明了一切。 我在SWIFT_MODULE_NAME的构build设置中进行了search ,结果没有任何结果。 我也在网上search,有这个名字的引用,但没有关于如何定义的信息。 此外,在Apple Docs中找不到SWIFT_MODULE_NAME。

我知道这一点:它在“Objective-C生成的接口标题名称”版本设置中使用,可以通过双击设置值查看:

$(SWIFT_MODULE_NAME)-Swift.h

它被用来弥补Objective-C和Swift之间的差距,并且只出现在包含Swift文件的项目中(和我所假设的Objective-C文件一起)。 就本文而言,Xcode 7.3是最新和最好的。

但是,这个值是在哪里定义的,我该如何修改呢?

模块名称来自产品模块名称构build设置:

构建设置截图

SWIFT_MODULE_NAME设置显然是隐藏的,但您可以通过查看Xcode.app/Contents/PlugIns/Xcode3Core.ideplugin/Contents/SharedSupport/Developer/Library/Xcode/Plug-ins/XCLanguageSupport.xcplugin/Contents/Resources/Swift.xcspec

 ... { Name = "SWIFT_MODULE_NAME"; Type = String; DefaultValue = "$(PRODUCT_MODULE_NAME)"; CommandLineArgs = ( "-module-name", "$(value)", ); }, ... 

转到构build设置,然后点击“级别”旁边的+。 参见:

在这里输入图像说明

将NEW_SETTINGreplace为SWIFT_MODULE_NAME作为设置的名称,无论是.h文件的模块名称(请不要包含空格)都在右侧。

你有没有签出这个文档:developer.apple.com/library/ios/documentation/Swift/Conceptual/…? 通常这是你的产品名称。 您可以在“生成设置”中的“产品包标识符”中设置更改值。 请注意,您无法覆盖框架中的产品名称

看截图:

在这里输入图像说明