RKObjectMapping.h Not Found

I "pod update", and my RestKit version now is 0.25.0, my RKValueTransformers is 1.1.2, and an error appeared "RKObjectMapping.h" not found.

What did RestKit change in the new version, that I check on the its github cannot find anything.

The following steps can reproduce the error:

1) Create a new project

2) pod init

Podfile looks like:

platform :ios, '8.3'
#pod 'RestKit', '~> 0.20.0'
#pod 'RestKit', '~> 0.24.1'
pod 'RestKit'

In all cases of different versions, the issue is the same

3) open .xcworkspace

4) in the viewcontroller.m

#import <RestKit/ObjectMapping/RKObjectMapping.h>
#import <RestKit/ObjectMapping/RKRelationshipMapping.h>
#import <RestKit/Network/RKResponseDescriptor.h>
#import <RestKit/Network/RKObjectRequestOperation.h>
#import <RestKit/Support/RKLog.h>
#import <RestKit/CoreData/RKEntityMapping.h>
#import <RestKit/Network/RKObjectManager.h>

or

#import "RKObjectMapping.h"
#import "RKRelationshipMapping.h"
#import "RKResponseDescriptor.h"
#import "RKObjectRequestOperation.h"
#import "RKLog.h"
#import "RKEntityMapping.h"
#import "RKObjectManager.h"

The error is still there: "RKObjectMapping.h" not found in a file of RestKit Pod

Note: I am using Xcode 7-beta5, Objective-C


Solution 1:

There is easy way to work around this problem when you don't want to touch cocoapods. because fixing them itself a hassle. I have fixed my problem as follows:

Click on your project file
Then go to build settings search for "header search path"
With the drop down just make them recursive.

You Should be looking for following:

${PODS_ROOT}/Headers/Public/AFNetworking
${PODS_ROOT}/Headers/Public/Bolts
${PODS_ROOT}/Headers/Public/ISO8601DateFormatterValueTransformer
${PODS_ROOT}/Headers/Public/RKValueTransformers
${PODS_ROOT}/Headers/Public/RestKit 
${PODS_ROOT}/Headers/Public/SOCKit
${PODS_ROOT}/Headers/Public

Solution 2:

After a while struggling, I noticed the error is not from RestKit. It comes from upgrading the latest version of cocoapods (0.39.beta.4).

The Header Search Path is not in recursive mode anymore.

The workaround is just downgrade the version of cocoapods to 0.38.0.

1) remove the latest version of cocoapod

sudo gem uninstall cocoapods

2) install the 0.38.0 version

sudo gem install cocoapods -v 0.38.0

Hope can help someone.

Updated:

Thanks Vig that we can do pod with a specific version:

pod _0.38.0_ update
pod _0.38.0_ install