CocoaHTTPServer2.3函数'LOG_OBJC_MAYBE'的隐式声明在C99中无效

And*_*zza 3 logging objective-c swift3

我使用的是最新版本 pod 'CocoaHTTPServer', '~> 2.3'和xcode Version 8.1 beta(8T29o)和swift 3.0

当我安装此pod时,我在HTTPLogError(以及HTTPLoging.h的其他方法)上收到此错误.

/Volumes/app/Project_ios/Pods/CocoaHTTPServer/Extensions/WebDAV/DAVResponse.m:102:9: Implicit declaration of function 'LOG_OBJC_MAYBE' is invalid in C99
Run Code Online (Sandbox Code Playgroud)

小智 12

我做了以下步骤来解决问题:

第1步:更改#import "DDLog.h"#import <CocoaLumberjack/CocoaLumberjack.h>文件HTTPLogging.h

第2步:在文件中添加以下宏 LOG_OBJC_MAYBE

#define HTTP_LOG_OBJC_MAYBE(async, lvl, flg, ctx, frmt, ...) \
do{ if(HTTP_LOG_ASYNC_ENABLED) LOG_MAYBE(async, lvl, flg, ctx, nil, sel_getName(_cmd), frmt, ##__VA_ARGS__); } while(0)

#define HTTP_LOG_C_MAYBE(async, lvl, flg, ctx, frmt, ...) \
do{ if(HTTP_LOG_ASYNC_ENABLED) LOG_MAYBE(async, lvl, flg, ctx, nil, __FUNCTION__, frmt, ##__VA_ARGS__); } while(0)
Run Code Online (Sandbox Code Playgroud)

第三步:更换所有HTTP_LOG_OBJC_MAYBELOG_C_MAYBE和所有HTTP_LOG_C_MAYBEHTTPLogging.h文件HTTPLogging.h

希望我的经验可以给予帮助.