我正在构建一个框架,最初命名为 Iris 。
当尝试将其作为Cocoapod发布时,我发现已经有一个“Iris”框架。
虽然他们有完全不同的目的和作者,但我不能将它作为具有此名称的pod发布。所以我做了不可思议的!
我尝试将整个内容重命名为 IrisKit 。
我的Xcode项目,现在名为IrisKit,有6个目标:
3框架目标
- IrisKit iOS
- IrisKit tvOS
- IrisKit macOS
3个示例项目
- IrisKit Example iOS
- IrisKit Example tvOS
- IrisKit Example macOS
不幸的是,我的示例项目将不允许我导入IrisKit ,并显示错误消息:
warning: file 'FeedTableViewController.swift' is part of module 'IrisKit'; ignoring import
开发人员应该做什么?
答案 0 :(得分:20)
备份您的项目,或者如果您处于源代码管理之下,请创建一个新分支并从那里开始工作。
以下是采取的步骤:
<强> 1。在项目&#34;身份和类型&#34;
中重命名项目<强> 2。将计划重命名为IrisKit
第3。将文件夹和组重命名为IrisKit
<强> 4。更新了Build-Settings&gt;下的info.plist引用。包装强>
<强> 5。更新了Build-Settings&gt;下的Bundle Identifiers。包装强>
<强> 6。将公共标题更新为IrisKit.h
<强> 7。更新的示例项目导入到IrisKit
<强> 8。更新了依赖关系管理:
- Swift Package Manager
- Cocoapods specs
<强> 9。最后,好主人这很重要:
不打算使用框架构建的目标必须具有与其使用的框架不同的产品名称。例如显示框架的示例项目
听起来可能很明显,但在大规模重命名时容易错过
-
多个构建目标具有相同名称的框架:
和示例目标。请注意,该名称与框架目标不同。
我花了一些时间才想出这个。希望它有所帮助。