Perbarui barang. 3.0 cukup tua dalam hal kecepatan evolusi Swift
vadian
2
Saya menggunakan Xcode 10.2 dan mencoba membuka 3.0 lama, tetapi tidak dapat menjalankan program karena saya mengalami kesalahan.
vlad uvarov
Buka dan perbarui proyek di Xcode 10.1. Dimungkinkan untuk memiliki beberapa versi Xcode yang berbeda pada disk.
vadian
1
versi terbaru dari Xcode; (
vlad uvarov
7
OH TUHAN!!! Saya membutuhkan waktu tiga jam untuk mengunduh XCode 10.2 hanya untuk mengetahui bahwa saya tidak dapat membangun aplikasi saya lagi. Saya tidak memiliki cadangan XCode 10.1! Ini hanya kegilaan yang harus dibayar Apple kepada saya.
vojta
Jawaban:
99
Pilih target 'SimpleWeather' dalam proyek dan ubah versi bahasa Target-> build setting -> Swift compiler language -> pilih 5, 4.2 dll
Saya menggunakan panduan Apple untuk migrasi dari Swift 3.0 ke 5.0, namun asisten tidak menunjukkan saran apa pun. Segera setelah saya mengubah dua baris ini pada jawaban di atas, itu mendorong saya untuk segera bermigrasi. Terima kasih telah membagikan solusi ini @Forrest !
Kareem Jeiroudi
Hebat! Senang bisa membantu Anda @Kareemeiroudi
Forrest
2
Terima kasih, Ini sangat membantu saya. Saya googling setengah jam dan menemukan solusi ini ...
Dharmik
2
Ini berhasil juga untuk saya. Melakukan kelas di atasnya dan proyek contoh berada dalam versi yang salah.
Tampaknya aplikasi tersebut mungkin memiliki kode versi Swift lama seperti Swift 3.0 dalam kasus Anda. Dalam rilis Xcode versi 10.2 telah meluncurkan versi Swift 5.0. Xcode 10.2 tidak mendukung kompiler untuk versi Swift 3.0. Anda dapat mengubah kompiler dari Build Settings -> Swift Compiler - Language -> Swift Language Version -> Change it to Swift 5. Jika kode Anda kompatibel dengan versi bahasa itu, maka kode akan menjalankan kode tanpa kesalahan.
Namun, mode kompatibilitas Swift 3 tidak akan didukung di kompiler Swift 5. Swift 4.2 adalah rilis terakhir Swift yang mendukung mode Swift 3. Ada perubahan penting pada permukaan bahasa dan interior implementasinya dalam rilis setelah Swift 3 yang akan menjadi dasar sumber masa depan (dan abadi) dan stabilitas biner.
Jika Anda benar-benar ingin menjalankan aplikasi yang memiliki kode versi Swift yang lebih lama daripada Anda harus menggunakan Xcode versi yang lebih lama. Anda dapat menggunakan Xcode versi 10.1, kompilernya memiliki dukungan untuk versi Swift 3.0.
Cara alternatif lainnya adalah dengan memigrasi kode Swift lama Anda ke versi baru versi Swift. Anda dapat memigrasi Swift 3.0 ke Swift 4.0 dalam versi Xcode 10.1.
Jika Anda memiliki beberapa file pod seperti yang saya lakukan dan Anda mengalami masalah dalam menemukan pod dengan SWIFT_Version = 3.0 coba bilah pencarian
Saya baru dalam pengembangan iOS. Setelah saya mengikuti semua jawaban di atas, saya masih mendapatkan kesalahan yang sama. Saya menggunakan Xcode 11 dan saya mengunduh contoh " FoodTracker " dari situs web Pengembang Apple dan saya mendapatkan kesalahan yang sama setelah mencoba membuatnya. Saya menemukan bahwa proyek memiliki beberapa pengaturan yang mengacu pada versi bahasa Swift setelah VIM konten file proyek. Jadi, saya menyelesaikan ini dengan terlebih dahulu mengatur "Project> FoodTracker", dan juga "TARGETS> FoodTracker" dan "TARGETS> FoodTrackerTests" ke Versi Bahasa Swift ke 5.0. Semoga membantu.
Jawaban:
Pilih target 'SimpleWeather' dalam proyek dan ubah versi bahasa Target-> build setting -> Swift compiler language -> pilih 5, 4.2 dll
sumber
******** Cara termudah: **********
1. Klik pada POD di kolom kiri.
2. Di kolom tengah pilih pod yang Anda inginkan, lalu buka "build settings" di panel kanan atas.
3. Kemudian cari "Versi Bahasa Swift" dan ubah ke versi yang dikenal.
sumber
Untuk Xcode 10.1, pilih File Pod Anda
-> Buka Pengaturan Build -> Pilih Pod Anda -> Cari "Swift" -> Navigasikan ke "Versi Bahasa Swift" -> Setel ke versi bahasa yang diinginkan.
sumber
3.x
dan Anda memiliki versi Xcode yang lebih besar daripada10.2
Saya mengikuti petunjuk di halaman ini dan kesalahan tidak teratasi. Akhirnya, masuklah
dan menemukan dua contoh di mana
masih direferensikan. Saya mengubahnya menjadi 5.0 dan kesalahan itu hilang. Tidak yakin mengapa keduanya masih ada.
sumber
sumber
pilih pod seperti per gambar dan ubah versi bahasa cepat ini dapat menyelamatkan Anda suatu hari nanti
sumber
Tampaknya aplikasi tersebut mungkin memiliki kode versi Swift lama seperti Swift 3.0 dalam kasus Anda. Dalam rilis Xcode versi 10.2 telah meluncurkan versi Swift 5.0. Xcode 10.2 tidak mendukung kompiler untuk versi Swift 3.0. Anda dapat mengubah kompiler dari
Build Settings -> Swift Compiler - Language -> Swift Language Version -> Change it to Swift 5
. Jika kode Anda kompatibel dengan versi bahasa itu, maka kode akan menjalankan kode tanpa kesalahan.Lihat tautan di bawah ini untuk lebih jelasnya. https://developer.apple.com/documentation/xcode_release_notes/xcode_10_2_release_notes/swift_5_release_notes_for_xcode_10_2
Jika Anda benar-benar ingin menjalankan aplikasi yang memiliki kode versi Swift yang lebih lama daripada Anda harus menggunakan Xcode versi yang lebih lama. Anda dapat menggunakan Xcode versi 10.1, kompilernya memiliki dukungan untuk versi Swift 3.0.
Cara alternatif lainnya adalah dengan memigrasi kode Swift lama Anda ke versi baru versi Swift. Anda dapat memigrasi Swift 3.0 ke Swift 4.0 dalam versi Xcode 10.1.
Untuk panduan migrasi, lihat https://swift.org/migration-guide-swift4/
sumber
Saya menemukan masalah ini saat mengembangkan Cocoapod. Saya sudah tua
.swift-version
file di repo saya yang menentukan Swift 3.0.Berlari
pod lib lint --verbose
membawa saya ke respons bermanfaat ini:Saya menghapus file dan menambahkannya
spec.swift_version = '5.0'
ke file podspec saya untuk memperbaiki masalah.sumber
sumber
Saya membuka file
MyProject.xcodeproj
(menggunakan editor VSCode)dan saya menemukan beberapa baris di mana
(di sekitar baris 400 di mana dikatakan
/* Begin XCBuildConfiguration section */
)Ubah ke SWIFT_VERSION = 5.0 atau lainnya. Setelah itu saya bisa membangun dan menjalankan proyek tersebut.
sumber
Cari Swift dan klik dua kali, lalu ubah setiap versi yang melanggar.
sumber
Jika Anda memiliki beberapa file pod seperti yang saya lakukan dan Anda mengalami masalah dalam menemukan pod dengan SWIFT_Version = 3.0 coba bilah pencarian
sumber
1) ubah versi pod di podfile (karena library menulis versi swift lama)
2) "pod install" di terminal
sumber
Saya baru dalam pengembangan iOS. Setelah saya mengikuti semua jawaban di atas, saya masih mendapatkan kesalahan yang sama. Saya menggunakan Xcode 11 dan saya mengunduh contoh " FoodTracker " dari situs web Pengembang Apple dan saya mendapatkan kesalahan yang sama setelah mencoba membuatnya. Saya menemukan bahwa proyek memiliki beberapa pengaturan yang mengacu pada versi bahasa Swift setelah VIM konten file proyek. Jadi, saya menyelesaikan ini dengan terlebih dahulu mengatur "Project> FoodTracker", dan juga "TARGETS> FoodTracker" dan "TARGETS> FoodTrackerTests" ke Versi Bahasa Swift ke 5.0. Semoga membantu.
Menetapkan Versi Bahasa Swift pada Proyek dan SEMUA Target
sumber
sumber