Mungkin ini hanya saya yang mengalami "fitur" yang mengganggu:
Setelah memutakhirkan dari Xcode 6.0.1 ke Xcode 6.1, banyak hal berubah. Xcode 6.1 selamanya mengindeks proyek atau menyusun file sumber. Proyek ini tidak terlalu besar. Ini hanya berisi banyak file Swift dan AWS SDK 2.0 Cocoapods di ruang kerja. Saya tidak berpikir itu harus mencegah keseluruhan untuk mengindeks dan mengkompilasi dengan lancar. Saya mencoba dengan beberapa aws-sdk-ios-samples, hanya untuk melihat cara kerja Xcode 6.1 pada mereka, dan akhirnya menunggu selamanya.
Solusi apa yang telah saya coba sejauh ini:
- Menghapus "Data Berasal" di Penyelenggara, dan membuka kembali dan ruang kerja. (gagal untuk memperbaiki)
- "Tampilkan Isi Paket" pada file .xcodeproj dan hapus .xcworkspace seperti pada ( Xcode 4 - kinerja lambat )
Sayangnya, tidak ada yang berhasil.
PS mungkin saya harus mencoba membuat ulang proyek? Pengaturan komputer saya: MacBook Pro (Retina, 13 inci, Pertengahan 2014), Memori 8 GB 1600 MHz DDR3, dengan Yosemite. (Saya pikir ini cukup untuk menjalankan proyek kecil ini.)
Jawaban:
Saya mencoba banyak saran di atas termasuk memecah file, menginstal Xcode 6.2 beta, dan melanggar pernyataan penggabungan string. Apa yang akhirnya berhasil bagi saya adalah memecah array deklarasi literal kamus yang saya gunakan untuk data pengujian menjadi beberapa
.append
pernyataan.Juga, untuk apa nilainya, entri ke-6 dalam larik ini adalah yang menyebabkan masalah bagi saya; lima bekerja dengan baik.
sumber
init()
bertahap memang bekerja dengan sempurna. Perlu disebutkan bahwa saya harus menghapus.xcworkspace
file juga.Satu-satunya solusi yang berfungsi untuk saya adalah menghapus semua data turunan (tidak hanya untuk proyek saat ini, cukup bersihkan seluruh folder) dan kemudian restart Xcode.
Buka File / Preferensi di Xcode
Klik Lokasi di ujung kanan jendela pop up
Klik pada ikon panah kecil di samping "/Users/Mac/Library/Developer/Xcode/DerivedData"....it membawa Anda ke folder Xcode yang berisi folder DerivedData (yang berisi semua data turunan dari proyek Anda sebelumnya .)
HAPUS folder DerivedData
sumber
Apakah Anda menggunakan CocoaPods? Saya mengalami masalah yang sama sebelumnya hari ini. (Menggunakan xCode 6.1.1)
Untuk memperbaiki masalah ini, saya menghapus semua yang ada di
~/Library/Developer/Xcode/DerivedData
,Pods
folder di direktori proyek saya, dan<project>.xcworkspace
.Saya kemudian membuka terminal, menavigasi ke direktori proyek saya, dan menjalankan
pod install
lagi.sumber
Memiliki masalah yang sama hari ini. Xcode 6.3.2, proyek Swift berukuran sedang. Pada satu titik itu mulai mengindeks dan tidak akan pernah menyelesaikan pengindeksan. Kode yang menyebabkan ini adalah kamus berjenis [String: [String]], jadi dikt kunci-string dengan larik string sebagai nilai. Saya memiliki dua di antaranya dengan kunci dari A hingga Z dan masing-masing dari 26 entri ini berisi array string dengan 5 hingga 10 string.
Menghapus data turunan tidak membantu. Hanya mengomentari penis itu membuatnya pergi lagi.
Sejujurnya, ini konyol! Apple perlu memperbaiki Xcode! Ini sudah sangat lambat saat menyusun proyek Swift tetapi bug seperti ini adalah penghenti. Saya tidak bisa melakukan pekerjaan saya dengan baik dengan ini!
sumber
Bagi mereka yang masih mengalami masalah ini, ini adalah solusi yang saya nikmati yang mencegah Anda harus memasukkan objek satu per satu:
sumber
Bagi saya, saya mencoba semua hal di atas tetapi tidak berhasil; tetapi yang harus saya lakukan hanyalah menghapus folder data turunan, lalu membuka proyek acak lainnya, menunggu hingga terindeks dan sekarang proyek asli saya (tidak berfungsi) berfungsi!
Bantulah dunia pengembangan dan jadikan kompiler cepat Anda open source- jadi kami tidak semua digagalkan oleh ketidakmampuan Anda.
sumber
Saya menggunakan Xcode Versi 7.3 (7D175)
Saya pikir saya mungkin telah menemukan masalah yang mendasarinya. Ada dua contoh di mana saya terjebak dalam fase pengindeksan:
Saya membuat penutupan yang saya tetapkan ke variabel dan menghilangkan tanda tangan tipe. Saya pikir xcode memiliki masalah dengan langkah inferensi jenis itu. Jika saya ingat dengan benar salah satu argumen adalah CGPoint, yang memiliki konstruktor kelebihan beban. Hipotesis saya adalah bahwa ada terlalu banyak kemungkinan dari apa yang mungkin diterima oleh penutupan saya sebagai argumen.
Saya memfaktorkan ulang metode pabrik sehingga alih-alih mengembalikan contoh satu jenis, itu bisa mengembalikan banyak jenis dengan kelas dasar umum. Tampaknya di mana pun saya menggunakan metode pabrik, saya harus mentransmisikan objek yang dihasilkan ke tipe tertentu (baik dengan as? Atau dengan menugaskannya ke variabel yang menerima tipe tertentu) Sekali lagi langkah inferensi tipe tampaknya rusak.
Sepertinya hal yang sama terjadi dengan deklarasi kamus yang disebutkan oleh individu sebelumnya. Saya mengajukan laporan bug dengan apel.
sumber
Saya mengalami masalah yang sama setelah meningkatkan ke 6.1. Xcode akan terjebak dalam kompilasi atau pengindeksan tanpa menghasilkan pesan kesalahan tertentu.
Masalah ini akhirnya diselesaikan dengan memecah beberapa ekspresi yang lebih panjang dalam file swift menjadi beberapa ekspresi yang lebih pendek. Bagian dari program saya menggabungkan banyak variabel string yang berbeda untuk membentuk string yang lebih panjang. Upaya untuk menggabungkan keduanya dalam satu ekspresi dan menggunakan operator penetapan penambahan keduanya gagal. Saya bisa membuatnya bekerja dengan melakukan sesuatu yang mirip dengan yang berikut (disederhanakan):
Saya mendapat ide ini dari menerima kesalahan berikut berkali-kali dalam versi Xcode sebelumnya "Ekspresi terlalu rumit untuk diselesaikan dalam waktu yang wajar; pertimbangkan untuk memecah ekspresi menjadi sub-ekspresi yang berbeda."
Semoga ini membantu
sumber
Saya telah berjuang dengan masalah yang sama. Saya sudah mencoba dua solusi yang disebutkan (menghapus data turunan dan menghapus .xcworkspace) tetapi tidak berhasil. Saya juga mencoba perlahan mengomentari sebagian besar kode sedikit demi sedikit dan menghapus file hingga hampir tidak ada yang tersisa dan pengindeksan masih macet.
Saya menemukan solusi yang berhasil untuk saya, saya telah membuka proyek dengan Xcode Versi 6.1 (6A1030) yang lebih lama yang tidak memiliki masalah pengindeksan kemudian kembali ke Xcode Versi 6.1 (6A1052d) terbaru yang saya gunakan sebelumnya dan pengindeksan dilakukan diperbaiki dan terus bekerja dengan baik.
Kesimpulan saya adalah bahwa ini adalah bug dengan Xcode Versi 6.1 (6A1052d) yang saya harap akan meningkat dengan rilis mendatang.
Masalahnya muncul kembali sesekali, perbaikan yang sama selalu bekerja. Saya kira solusi lain adalah dengan tetap menggunakan Xcode Versi 6.1 (6A1030) yang lebih lama tetapi tidak akan berfungsi dengan perangkat yang menjalankan iOS 8.1 dan tidak akan ada perbaikan bug terbaru.
sumber
Saya telah mencoba ini dengan Xcode 8.3.3. Ini hasil saya:
Anda dapat menulis kode Swift yang sangat bagus yang akan menyebabkan pengindeksan macet.
Setelah pengindeksan hang, itu hang. Mengubah kode Swift kembali ke sesuatu yang tidak akan menyebabkan pengindeksan hang tidak membantu, itu masih macet.
Menutup proyek dan membuka kembali tidak membantu dalam situasi itu.
Keluar dari Xcode dan memulai ulang itu membantu. Pengindeksan tidak akan hang lagi (yaitu jika Anda mengubah kode kembali menjadi sesuatu yang tidak membuatnya hang).
Memulai ulang Mac Anda juga membantu, meskipun tidak diperlukan.
Gantung ini disebabkan oleh kode Swift yang sangat bagus. Contoh yang saya lihat
Pengindeksan akan hang. Saya mengomentari sebagian besar "??" baris dan itu baik-baik saja (setelah berhenti dan meluncurkan kembali Xcode). Hapus komentar satu demi satu. Dengan beberapa baris tidak apa-apa, kemudian menghapus komentar pada baris berikutnya akan membuatnya menggantung.
Satu-satunya hal yang tampaknya membantu adalah mengubah kode Anda.
sumber
Di Xcode saya, solusinya adalah menutup semua jendela yang berlebihan. Untuk beberapa alasan banyak jendela yang terbuka membuat Xcode menjadi sangat lambat.
sumber
Akhirnya, saya "memecahkan" masalah tersebut, meskipun itu hanya solusi.
Saya membuat proyek lain dan menambahkan file satu per satu ke dalamnya. Lalu saya melihat file viewcontroller.swift "sangat panjang". Kemudian saya memecah kodenya menjadi modul dan membuat kode yang digunakan berulang kali itu menjadi fungsi di file swift lainnya. Dan juga, saya menerima saran secara online bahwa ekspresi panjang harus dipecah menjadi lebih pendek. Kemudian, pengindeksan bekerja dan kompilasi bekerja.
Jadi untuk saat ini, saya sudah "menyelesaikannya".
TAPI, menurut saya ini tidak benar. Xcode IDE seharusnya lebih dari mampu menangani file cepat "sangat panjang" saya, hanya 1.500 baris. Saya yakin ini pasti bug (sudah ada sejak lama), meskipun Xcode 6.1 sudah ditingkatkan dari Xcode 6.0.1.
sumber
Bagi saya, saya menghapus aplikasi Xcode dan mengunduhnya lagi dan menginstalnya. Itu menyelesaikan masalah, setidaknya selesai sekarang.
sumber
Pengindeksan Xcode biasanya untuk kode Anda untuk saran dan penyelesaian otomatis antara lain seperti membantu Anda di papan cerita dan sebaliknya. Tetapi untuk mempercepat proyek xcode Anda, Anda dapat mematikan / menyalakannya melalui terminal
Matikan
default pengindeksan tulis com.apple.dt.XCode IDEIndexDisable 1 Hidupkan default pengindeksan tulis com.apple.dt.XCode IDEIndexDisable 0
Tapi pendekatan yang lebih baik untuk menggunakan mac cepat dengan RAM yang bagus.
sumber
Jika Anda tidak keberatan kembali ke 6.0.1 sampai mereka mengetahuinya, itulah yang berhasil bagi saya. Saya mengalami masalah yang sama dengan 6.1 dan 6.1.1. Sekarang saya baik-baik saja. Saya akan mencoba 6.2 jika sudah keluar.
Anda dapat menemukan perangkat lunak apple versi sebelumnya di situs dev resmi mereka, di sini: https://developer.apple.com/downloads/index.action
Jika Anda melakukan ini, pastikan untuk menghapus salinan Xcode Anda saat ini terlebih dahulu.
sumber
Saya menggunakan Xcode 6.1.1 dengan file swift di MacBook Pro yang sama persis.
Saat saya terus menambahkan baris ke dalam array string 3D, Xcode tiba-tiba menjadi tidak dapat digunakan dan sekarang saya tidak dapat melakukan apa pun.
Akan mencoba kembali ke 6.1 dan semoga masalahnya akan hilang.
sumber
Saya melihat ini di Xcode 6.3.2. Saya benar-benar berharap bahwa setahun setelah rilis, mereka akan memiliki kompiler yang berfungsi, tetapi sayangnya.
Jika tidak ada solusi di atas yang berhasil, coba periksa kode Anda untuk menemukan kesalahan sintaksis. Dalam proses pemfaktoran ulang, saya mengekstrak penutupan tetapi lupa untuk memenuhi syarat parameter:
Jika saya telah belajar sesuatu dari bekerja di Swift, itu adalah bekerja secara bertahap, untuk menghindari terlalu banyak mundur untuk menemukan kode yang menyinggung.
sumber
sumber
Saya menggunakan Xcode 8.2 dan juga berakhir dengan masalah ini. Ini dimulai setelah saya mendefinisikan variabel tupel kompleks - array tupel dengan subarray tupel. Segala sesuatunya menjadi sangat lambat ketika subarray tupel memiliki properti yang dihitung secara terprogram.
Seperti yang dicatat beberapa jawaban lain, pengindeksan membutuhkan waktu lama, dan saya yakin ini mencoba menyimpulkan jenis variabel.
Saya memecahkan masalah pertama dengan mendefinisikan variabel secara jelas dengan tipe yang disertakan. Saat memperbarui properti, saya menghitungnya terlebih dahulu kemudian menetapkannya ke tupel, alih-alih menghitung dalam mendefinisikan variabel.
Berikut adalah contoh kode.
Intinya adalah jangan biarkan Xcode menyimpulkan struktur kompleks.
sumber
Saya mengalami masalah yang sama. Xcode saya adalah 8.2.1. Namun dalam kasus saya, saya ingin membuat array kamus dengan 33 pasangan nilai kunci. Saya melakukan dengan cara berikut yang terjebak dalam pengindeksan:
Berikut ini berhasil untuk saya:
sumber
Saya telah mengalami masalah ini juga dan mengatasinya dengan menghapus / mengubah ekspresi dengan operator "+".
Saya mengubah ini:
Untuk ini:
Itu memecahkan masalah.
Mesin saya adalah MBP maksimal akhir 2013
sumber
Anda mungkin ingin memperbarui ke Xcode 6.1.1
Ini telah dirilis secara resmi dan menyelesaikan masalah pengindeksan bagi kami. Dalam deskripsi pembaruan, dikatakan bahwa mereka telah menerapkan perbaikan stabilitas sehingga sangat mungkin itu akan berperilaku dengan cara yang lebih stabil.
sumber
Xcode 6.2 beta menyelesaikan masalah untuk saya. Tidak secepat kilat, tapi setidaknya itu tidak mengindeks selamanya. Beta tidak menginstal di atas instalasi Xcode biasa Anda, jadi jika Anda tidak menyukai versi beta, Anda dapat menghapusnya.
Berbagai unduhan Xcode termasuk beta>
sumber
Saya memiliki ekspresi seperti:
juga
Jadi intinya adalah menulis ulang file Anda agar hanya berisi ekspresi tingkat taman kanak-kanak dan masalah pengindeksan akan hilang.
sumber
Xcode 11.5 (11E608c) dan masih masalah yang sama, 6 tahun setelah pertanyaan awal. Saya berharap saya bisa "menandai" apel dalam pertanyaan ini sehingga mereka bisa melihat kekacauan ini. Ini adalah proyek besar (> 1000 file) dan saya berada di bawah jam jadi ketika saya melihat indeks pembekuan saya dengan lebih dari 100 file berubah dan tidak bisa kembali.
Saya sudah mencoba segalanya:
Masalahnya adalah pembuatan array:
Apa yang membantu saya menemukan file swift yang buruk adalah ketika xcode membekukan pengindeksan saya melakukan langkah-langkah berikut
SOURCEKIT_LOGGING=3 /Applications/Xcode.app/Contents/MacOS/Xcode &> ~/Documents/xcode.log
ini yang akan memulai Xcode dengan tingkat 3 verbose dan mulai masuk ke file log.Ini bukan solusi lengkap tetapi sangat membantu untuk menelusuri dan mengetahui ke mana mencarinya.
sumber