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
生成的源依赖于 ISO8601
、JSONModel
和 AFNetworking
,所以我下载了它们并添加到我的项目中。项目构建成功,但运行不正常。当我使用 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
我已经从 swagger.json
生成了 Objective c
个客户端。并通过右键单击项目然后选择 Add Files to "ProjectName"
将生成的源导入到我的 Xcode 项目中。由于 swagger-codegen
生成的源依赖于 ISO8601
、JSONModel
和 AFNetworking
,所以我下载了它们并添加到我的项目中。项目构建成功,但运行不正常。当我使用 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