Objective c 在项目中手动导入时,从 swagger-codegen 生成的客户端无法正常工作

Objective c client generated from swagger-codegen is not working properly when imported mannually in project

我已经从 swagger.json 生成了 Objective c 个客户端。并通过右键单击项目然后选择 Add Files to "ProjectName" 将生成的源导入到我的 Xcode 项目中。由于 swagger-codegen 生成的源依赖于 ISO8601JSONModelAFNetworking,所以我下载了它们并添加到我的项目中。项目构建成功,但运行不正常。当我使用 Api 文件夹内的函数调用任何 API 调用时,它无法调用 Core 文件夹内的函数。我尝试将调试点放在 Core 文件夹内的函数中,但控制流没有到达那里,并且 Xcode 也没有显示任何错误。

令人惊讶的是,如果我将其添加为 cocoapod 依赖项,生成的代码工作正常。

但我不想在我的项目中使用 cocoapod

我在手动导入时遗漏了什么步骤?为什么 Xcode 没有抛出任何错误?

如果您手动导入依赖项而不是使用 cocoapods,那么您必须更改

中的导入语句
#import <JSONModel/JSONModel.h>

#import "JSONModel.h"

所有 AFNetworking 导入都相同

终于找到问题了"Pheww!",希望对大家有帮助

实际上我正在使用所有三个依赖项的框架,应用程序在启动时崩溃了。我发现在某个地方将它们设为 Optional in Linked Frameworks and Libraries 将阻止应用程序崩溃,并且确实崩溃了。

但是这样做让我陷入了这个奇怪的场景。

所以解决这个问题的方法是保留它们Required并在Build Phases中添加一个New Copy Files Pahse并在目标中选择Frameworks。我将其重命名为 Embed Framework.

new copy files phase

然后交叉验证框架,在 General 选项卡中

enter image description here