ฉันพูดถึงข้อความแสดงข้อผิดพลาดที่คล้ายกันกับวิศวกรของ Apple ที่ WWDC2017 ดูเหมือนว่าปัญหานี้อาจมีสาเหตุหลายประการและฉันทราบว่าของฉันแตกต่างจากที่อธิบายไว้ข้างต้นเล็กน้อย
ทีมของฉันใช้เวลาหลายสัปดาห์ในการพยายามหาสิ่งนี้และมันก็กลายเป็นบั๊กในคอมไพเลอร์ของ Apple ซึ่งเราไม่เคยคิดได้ด้วยตัวเอง นอกจากนี้ยังมีวิธีแก้ปัญหาที่ง่ายมาก
ดังนั้นนี่เป็นเพียงฉันโพสต์การแก้ไขที่นี่เพื่อเพิ่มความน่าจะเป็นที่มีคนอื่นค้นหาข้อความแสดงข้อผิดพลาดที่ทำให้สับสนนี้และพบคำตอบนี้
ดังนั้นนี่คือ ในกรณีของเราเรามีโครงการ Objective-C โดยใช้เฟรมเวิร์ก Swift และ Objective-C ผสมกัน การแก้ไขนี้อาจนำไปใช้ในบริบทที่แตกต่างกันเล็กน้อยเพียงแค่ลองใช้
มีข้อผิดพลาดเกิดขึ้นกับวิธีการรวบรวมแฟล็กที่รวบรวมจากเฟรมเวิร์กและโปรเจ็กต์และโปรเจ็กต์ "Objective-C แท้" "เปิดใช้งาน"
วิธีแก้ไข: เพิ่มไฟล์ Swift ที่ว่างเปล่าหนึ่งไฟล์ ("Whatever.swift" หรืออะไรก็ได้) ในโปรเจ็กต์ Objective-C ของคุณทำให้มันไม่บริสุทธิ์ตามวัตถุประสงค์-c อีกต่อไป (new-> file-> Swift file อย่า สร้างส่วนหัวของการเชื่อมโยงไฟล์จะมีเฉพาะการนำเข้าของ Foundation)