iOS Build ล้มเหลวในขณะคอมไพล์ที่มีปัญหา“ ไม่พบอุปกรณ์ที่เหมาะสมสำหรับประเภท SimDeviceType”


99

ฉันได้รับปัญหาด้านเวลาในการคอมไพล์เมื่อเรียกใช้แอปด้วย Xcode 10.3 beta 2 บน iPad Air ฉันได้รับปัญหาด้านล่าง

Failed to find a suitable device for the type SimDeviceType : com.apple.dt.Xcode.IBSimDeviceType.iPad-2x with runtime SimRuntime : 10.3 (14E5239d) - com.apple.CoreSimulator.SimRuntime.iOS-10-3

ความช่วยเหลือใด ๆ ที่ได้รับการชื่นชมอย่างมาก


1
โปรดทราบ - คำตอบของ ulsc ด้านล่างคือสิ่งที่เกิดขึ้นที่นี่ sudo killall -9 com.apple.CoreSimulator.CoreSimulatorServiceเคล็ดลับไม่
Will Von Ullrich

คำตอบ:


330

ดูเหมือนว่ากระบวนการจำลองแบบเก่ายังคงเปิดอยู่ในพื้นหลังระหว่างการอัปเดต XCode

เพียงแค่ทำงาน

sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService

ในเทอร์มินัลอาจแก้ปัญหาได้
ไม่จำเป็นต้องทำความสะอาดโครงการและ / หรือสร้างโฟลเดอร์


18
แก้ไข. ปัญหานี้จะปรากฏขึ้นหลังจากอัปเดตเป็น Xcode 10.3 คำสั่งดังกล่าวแก้ปัญหาได้ ไม่จำเป็นต้องสร้างโฟลเดอร์ใหม่ทั้งหมด ก่อนที่คำสั่งจะดำเนินการบริการจำลอง 4 กระบวนการกำลังทำงานแม้ว่าจะไม่มีโปรแกรมจำลองกำลังทำงานอยู่ก็ตาม การรีสตาร์ทคอมพิวเตอร์จะใช้งานได้เช่นกันเนื่องจากจะสิ้นสุดบริการจำลองที่เกี่ยวข้องทั้งหมดในระหว่างการรีบูต
Raptor

เหมือนกันที่นี่ Tnx :)
Kamil Harasimowicz

1
ปัญหาเดียวกันขณะอัปเกรดจาก Xcode 10.3 เป็น Xcode 10.4 ขอบคุณสำหรับคำแนะนำ! :)
flocbit

ใช่โปรดทำเครื่องหมายว่าเป็นคำตอบที่ถูกต้องหรืออย่างน้อยก็ตรึงไว้ที่ด้านบนสุดถ้าเป็นไปได้ ขอบคุณมันช่วยแก้ปัญหาของฉัน
Joseph Selvaraj

หรือเพียงแค่รีบูต macOS ด้วยเอฟเฟกต์เดียวกันทำงานบน Mac 2 เครื่อง
NoAngel

20

หากคุณออกจาก Xcode และยังคงได้รับข้อผิดพลาดเดิมให้ลองทำความสะอาด (command + shift + option + k) แล้วเลือกตัวเลือก "Clean" ในป๊อปอัป ทำซ้ำ 2 ถึง 3 ครั้ง มันใช้ได้ในกรณีของฉัน


7
นี่ดูเหมือนจะเป็นกฎทองเมื่อพูดถึง Xcode - ทำซ้ำวิธีการเดียวกันหลาย ๆ ครั้งและในที่สุดก็ใช้ได้
miphe

7

ฉันประสบปัญหาเดียวกัน ในกรณีของฉันฉันได้เปิดตัว Simulator จาก Xcode เวอร์ชันก่อนหน้าก่อนสร้าง ปัญหายังคงมีอยู่เมื่อฉันออกจากโปรแกรมจำลอง แต่การรีสตาร์ท Xcode ช่วยแก้ปัญหาให้ฉันได้


ตรวจสอบให้แน่ใจว่าได้รีสตาร์ท Metro Bundler ด้วยหากทำงานอยู่
มิพ

6

ฉันเพิ่งพบปัญหาเดียวกันใน Xcode 10.3 (10G8) ล่าสุด ต้องดำเนินการประมาณ 4 หรือ 5 โปรเจ็กต์เต็มรูปแบบและเด้งกล่องก่อนที่ฉันจะรวบรวมอีกครั้ง ฉันหวังว่า Apple จะได้รับการแก้ไข


2
สิ่งเดียวกันที่นี่ฉันเพิ่งอัปเกรดเป็น Xcode 10.3 และข้อผิดพลาดต่อต้านจะหายไปจนกว่าฉันจะรีสตาร์ทคอมพิวเตอร์: <
Peter Ivanics

5
การรีสตาร์ทคอมพิวเตอร์ช่วยแก้ปัญหานี้ได้ ... (Xcode 10.3)
Mateusz

ฉันด้วย (XCode 10.3)
Gonzalo Gallotti

2

ฉันต้องยกเลิกการเชื่อมต่อ iPad ที่ฉันเชื่อมต่อกับ Mac ด้วยเหตุผลบางอย่างที่ยุ่งกับวิธีการรวบรวม Xcode


1

สิ่งเดียวที่แก้ไขให้ฉันมีดังต่อไปนี้:

  1. ล้าง~/Library/Developer/CoreSimulator/Profiles/Runtimesโฟลเดอร์
  2. รีสตาร์ท Xcode
  3. เคลียร์โปรเจ็กต์
  4. เรียกใช้โครงการ

0

ฉันแก้ปัญหานี้โดยการเปิดตัวจำลองก่อน Xcode จะผ่านการสร้าง

จากนั้นเรียกใช้โปรเจ็กต์บนอุปกรณ์

หวังว่านี่จะช่วยได้


0

หากคุณใช้งาน xcode หลายเวอร์ชันคุณควรตรวจสอบxcode-select -pให้แน่ใจว่าคุณใช้ xcode และคอมไพเลอร์เวอร์ชันที่ถูกต้อง หากไม่เป็นเช่นนั้นให้ใช้xcode-select -s { correct xcode path }เพื่อตั้งค่า xcode เวอร์ชันที่ถูกต้อง


ฉันใช้ Xcode 8.3 และ Xcode 9. เมื่อฉันป้อนข้อมูลใน terminal ที่ฉันได้รับxcode-select -p /Applications/Xcode.app/Contents/Developerฉันจะแก้ไขปัญหานี้ได้อย่างไร? ในโฟลเดอร์ Applications ฉันมีชื่อ Xcode สำหรับ Xcode9 และ | Xcode8 สำหรับ Xcode 8
bibscy

ภายในโฟลเดอร์แอปพลิเคชันคุณอาจวางไว้ที่นั่นด้วยตนเอง หากคุณติดตั้งผ่าน App Store เวอร์ชันนั้นจะเป็น /Applications/Xcode.app/Contents/Developer ฉันไม่เชื่อว่าจะมีแอพสโตร์ที่ติดตั้งสองเวอร์ชันพร้อมกันได้ หากคุณต้องการเปลี่ยนคุณจะต้องชี้ไปที่อีกอันหนึ่งด้วยตนเองซึ่งอย่างที่ฉันบอกว่าถูกวางไว้ที่นั่นด้วยตนเอง ดังนั้นสิ่งเดียวกันนี้ยังคงใช้กับคุณxcode-select -s { Xcode8 or 9 }
Marquis103

0

ได้รับปัญหาเดียวกัน แต่หลังจากผ่านไปหนึ่งชั่วโมงได้รับความสำเร็จในการแก้ไขปัญหานี้มีปัญหา xcode ดังนั้นโปรดเปิด xcode ของคุณใหม่แล้วล้างโปรเจ็กต์ของคุณ .. หรือใช้คำสั่ง short cut เพื่อล้าง (command + shift + option + k)

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.