2015-10-27 31 views
16

Trong kho lưu trữ Xcode 7.1 không nói Restkit/Restkit.h không tìm thấy nhưng trong gỡ lỗi nó thành công tìm thấy tiêu đề. Đó là một dự án cũ mà không sử dụng vỏ cacao để RestKit được thêm vào bằng tay trong đó. Đã thử nhiều giải pháp nhưng không thành công. Yêu cầu trợ giúp.Xcode 7.1 tiêu đề không tìm thấy

+0

Có chính xác cùng một vấn đề. Làm việc với RestKit 0.10.3 (không phải cocoapod). Đã thử không quan tâm đến các đường dẫn Tiêu đề tìm kiếm, nhưng không có gì hoạt động cho đến bây giờ. Ngoài ra, hãy thử [https://issues.apache.org/jira/browse/CB-9656] – FeltMarker

+0

Nguyên nhân của vấn đề này là chúng tôi đã thêm "$ (BUILT_PRODUCTS_DIR) /../../ Tiêu đề" vào đường dẫn tìm kiếm tiêu đề , mà tìm kiếm xây dựng/Release-iphoneos và sau đó theo dõi trở lại thư mục Tiêu đề chứa tệp Restkit.h nhưng tiếc là Release-iphoneos không được tạo trong quá trình lưu trữ trong xcode 7.1.Có thể bạn có thể tìm thấy một số trợ giúp về vấn đề này –

Trả lời

19

Cùng với đề xuất của bạn và this SO post Tôi đã giải quyết bằng cách thêm "$ (BUILD_ROOT) /../ IntermediateBuildFilesPath/Headers" (đệ quy) trong cài đặt xây dựng dự án, Đường dẫn tìm kiếm tiêu đề để phát hành. Ngoài ra thiết lập Skip Install = YES (xây dựng các thiết lập/triển khai trong RestKit dự án) và thay đổi:

#import <RestKit/RestKit.h> to "RestKit/RestKit.h" 

Note. Kiểm tra tab tùy chọn xcode/vị trí của bạn nơi dữ liệu có nguồn gốc được lưu trữ. Mặc định là vị trí xây dựng duy nhất. Sau đó, tìm trong Finder cho thư mục IntermediateBuildFilesPath và tìm kiếm các tiêu đề bạn đang thiếu. Thêm thư mục này vào đường dẫn tìm kiếm.

+1

làm việc nhóm tốt: D –

+5

Tôi có thể xác nhận rằng thêm "$ (BUILD_ROOT) /../ IntermediateBuildFilesPath/Headers" để RELEASE chỉ giải quyết nó cho tôi. Tôi có thể đang tạo ra các vấn đề khác sau này bằng cách không thực hiện các bước bổ sung, nhưng bây giờ, có vẻ như tôi đang lưu trữ tiền phạt. – ericWasTaken

+2

Tôi cũng có một dự án kế thừa với RestKit và điều này cũng làm việc cho tôi, cảm ơn! Giống như eric tôi đã không làm cho nó đệ quy và không cần phải thay đổi dòng #import. –

10

Tôi gặp vấn đề tương tự. Tôi được thêm vào sau để Header Search Paths xây dựng các thiết lập với không đệ quy được lựa chọn, và nó giải quyết vấn đề của tôi:

"$ (BUILD_DIR) /../ IntermediateBuildFilesPath/Headers"

Tôi không phải thay đổi cú pháp nhập hoặc thay đổi bất kỳ cài đặt bản dựng nào khác.

+0

https://forums.developer.apple.com/message/79355#79355 https: // github. com/RestKit/RestKit/issues/2341 –

3

Thay đổi Tiêu đề Search Paths để:

"$(BUILD_DIR)/../IntermediateBuildFilesPath/Headers" (non-recursive) 

là cách chính xác đối với tôi, quá. Đối với các tiểu dự án khác, bạn nên thay đổi đường dẫn thư mục tiêu đề công khai (Xây dựng cài đặt> Bao bì) thành

"../../Headers/$(TARGET_NAME)" 

trong cài đặt của mục tiêu của dự án.

+0

Bạn, thưa bạn, đã cứu mạng sống của tôi :-) Tôi sắp từ bỏ ở đây! Bây giờ mọi thứ đều có ý nghĩa ... – Bartserk

+0

Điều này đã hiệu quả. Cảm ơn! –

1

Tất cả các câu trả lời trên đều là một phần của giải pháp; tuy nhiên, trong trường hợp của tôi, tôi gặp phải một chi tiết khiến tôi bối rối một lúc.

Theo câu trả lời ở trên, tôi cũng cập nhật Header Search Paths (bên dưới Cài đặt xây dựng) bằng cách thêm:

"$(BUILD_DIR)/../IntermediateBuildFilesPath/Headers" (non-recursive) 

nhưng điều đó không làm việc cho đến khi tôi nhận ra ...

tôi chỉ cập nhật Dự ánMục tiêu đang giữ đường dẫn cũ.

Vì vậy, hãy nhớ cập nhật Đường dẫn dự án AS WELL AS Đường dẫn đích.

ps, ​​tôi không phải thay đổi bất kỳ câu lệnh nhập RestKit nào.

+0

"* một lưu ý khác cho câu trả lời đó *" -> với 500 đại diện, bạn đủ điều kiện để lại nhận xét về câu trả lời khác. Thay vào đó, nếu bạn chọn để lại câu trả lời, ít nhất là liên kết rõ ràng đến câu trả lời đích mà bạn đang đề cập đến, để làm rõ một năm kể từ bây giờ bạn đang nói về điều gì. –

+0

@AndrasDeak, Tất cả câu trả lời ở trên đều đề cập đến việc thêm cùng một đường dẫn tìm kiếm, cùng một giải pháp. Tôi thấy rằng tôi không cần thay đổi câu lệnh nhập. –

+1

Sau đó, tôi đề nghị rephrasing câu đầu tiên của bạn. Có thể xóa câu đầu tiên và làm rõ rằng phương thức hiện tại không hoạt động cho bạn, và câu trả lời thực sự của bạn là nửa sau của bài đăng của bạn :) Tôi * là * một giáo dân, nhưng cũng có thể gây nhầm lẫn cho người khác. (Chỉ cần một gợi ý, bạn có thể lấy nó hoặc để nó) –

Các vấn đề liên quan