Xcode tiba-tiba berhenti menjalankan proyek pada perangkat keras: "Tidak dapat meluncurkan xxx.app: .. Tidak ada file seperti itu .." [ditutup]

139

Xcode telah berhenti dapat menjalankan aplikasi saya, itu dimulai langsung setelah saya menghapusnya dari perangkat dan mencoba menginstal ulang dengan menjalankannya kembali di Xcode (sesuatu yang telah saya lakukan ratusan kali sebelumnya).

Ia mengatakan

"Tidak dapat meluncurkan XXX.app"

"Tidak ada file atau direktori seperti itu (/ Pengguna / Tabletap / Perpustakaan / Pengembang / Xcode/DerivedData/MyApp-ekxcbebfpzkahtfkujyqkcwprzia/Build/Products/Debug-iphoneos/MyApps.app/MyApp)."

Saya telah me-reboot telepon, meluncurkan kembali Xcode, membersihkan semuanya, membangun kembali semuanya. Pesan kesalahan ini tidak akan hilang.

Ini dengan Xcode 4.5 yang telah saya gunakan sejak tersedia, jika saya kembali ke 4.3.2 maka Xcode mengatakan "Selesai menjalankan aplikasi" tetapi sebenarnya tidak melakukan apa-apa - aplikasi tidak diinstal atau dijalankan.

Saya benar-benar macet - tidak dapat menjalankan apa pun di perangkat lagi.

Ada saran?

Gruntcakes
sumber
4
Goto Organizer di xcode Anda, tekan tab proyek dan hapus data yang diperoleh untuk proyek Anda dan bersihkan proyek itu dan bangun lagi ..
Dinesh Raja
2
Masih mendapatkan hal yang sama setelah melakukan itu. Saya akan mencoba menginstal ulang Xcode.
Gruntcakes
Saya pikir Anda telah mengubah sesuatu di pengaturan build Anda di jalur untuk menjalankan aplikasi Anda di perangkat
Dinesh Raja
9
Saya menemukan apa itu - sambil menambahkan kemampuan perangkat ke info.plist saya entah bagaimana menambahkan baris baru tetapi tidak memberinya nilai.
Gruntcakes
1
Meskipun menghapus data turunan akhirnya berhasil bagi saya, tidak membantu sampai saya mem-boot ulang iPad dan OS / X, mengosongkan tempat sampah setelah menggunakan Finder untuk menghapus data yang diturunkan, dan menghapus perangkat BLE yang terhubung melalui port USB. Saya tidak tahu langkah mana yang diperlukan - XCode kemudian dikompilasi dengan perangkat BLE terpasang - tetapi begitu semua langkah tersebut ditambahkan untuk menghapus data yang diturunkan, proyek dikompilasi dengan baik.
Mike

Jawaban:

125

Itu sangat menjengkelkan. Kesalahan ini terjadi di sejumlah situasi yang berbeda. Kadang-kadang me-restart Xcode, memperbaiki masalah. Jika tidak, ikuti langkah-langkah ini:

Putuskan sambungan perangkat Anda.

Hapus aplikasi dari perangkat Anda.

Keluar dari Xcode (Jangan hanya menutup jendela, keluar saja)

Hapus folder data turunan ( ~/Library/Developer/Xcode/DerivedData/-gbrvhlvwmpiobxdujegtghggrffp- atau sesuatu seperti itu)

Sekarang jalankan Xcode sekali lagi, sambungkan perangkat dan jalankan proyek. Seharusnya bekerja dengan baik.

dari blog DhilipSiva

Sudhakar
sumber
4
Ini adalah kunci untuk saya. Hargai tingkat detail dalam jawaban.
Jason Pawlak
Hanya satu dari hal-hal yang "sangat menyebalkan" ketika mengerjakan platform ini
bergegas
2
tidak berfungsi ... saya menjalankan perangkat
Rajneesh071
Langkah-langkah di atas tidak menyelesaikan masalah. Saya masih mendapatkan "Tidak dapat menjalankan <app>. <App> tidak ditemukan".
user298261
bekerja untuk saya, coba yang ini
Muhammad Waqas
57

Coba hapus "Kemampuan perangkat yang diperlukan" di file -Info.plist.

Anda tidak dapat memerlukan armv7 pada 3G, dan Anda tidak dapat memerlukan armv6 pada perangkat yang lebih baru, jadi hapus saja atribut ini sepenuhnya.

Almog C
sumber
2
Ini adalah satu-satunya solusi yang bekerja untuk saya. Sudah mencoba menyegarkan sertifikat, membersihkan folder restart perangkat, xcode dan mac tidak ada yang membantu. Hapus saja atributnya dan itu terinstal dan bekerja dengan baik.
automaticoo
1
Solusi ini juga berfungsi untuk saya - kesalahan aneh.
keliru
Saya juga harus memastikan arsitektur yang valid dalam pengaturan termasuk armv6, armv7 dan armv7s (saya menggunakan XCode 4.5 sekarang ... Saya tahu ini sudah beberapa bulan, tetapi perlu disebutkan.) Juga, ketiganya harus didaftar. di bagian Arsitektur juga.
David Morton
Mencoba ini, tidak ada sukacita tetapi jawaban Sudhakar + Jagger bekerja. Xcode 4.5.1 dan iPad1
mm2001
Ini adalah masalah bagi saya: aplikasi saya memiliki "telepon" sebagai kemampuan yang diperlukan dan saya mencoba untuk menjalankan aplikasi pada mini-WiFi iPad saja.
chitza
38

Saya menemukan jawabannya. Versi target penyebaran iOS tidak sama dengan versi OS perangkat saya.

wihing
sumber
Melakukannya untukku juga. Untuk beberapa alasan XCode selalu ingin mengatur ulang target penyebaran proyek saya ke 6.0.
Donald Burr
3
bekerja untuk saya juga ... Saya mengubah tipe Perangkat dari "iPhone" menjadi "Universal" dan xcode secara otomatis mengubah target menjadi 6.0 yang saya tidak perhatikan sebelumnya. Bergeser kembali ke 4.3 dan berhasil ...
Jim Jose
Sayang sekali menghapus DerivedData dan kemampuan perangkat yang diperlukan tidak membantu, jadi saya menetapkan target penerapan saya dari 6.1 menjadi 5.0 dan itu berfungsi di iPod Touch saya yang menjalankan iOS 5.1.
Richard Altenburg - Brainchild
Astaga. berapa kali aku akan membuat kegagalan yang sama ...
heximal
ini solusi untuk saya
GeorgeBuckingham
13

Pertama mencoba beberapa hal di atas dengan info.plists dan menghapus data turunan, bersih, dll.

Solusi saya: keluar dari XCode, buka kembali proyek. Pergi ke data yang diturunkan di Finder. Data yang dihapus untuk semua proyek (semuanya dapat ditelusuri, tetapi saya akan mencoba menghapus data proyek Anda yang bermasalah terlebih dahulu). Dan kemudian berhasil lagi. Menghapus data turunan dari XCode tidak berfungsi.

Joris van Liempd iDeveloper
sumber
4
Jalur ke folder data yang diturunkan: / Users / <User> / Library / Developer / Xcode / DerivedData /
Pascalius
ini memecahkan masalah saya + Menghapus semua folder membebaskan 10 GB memori jadi dua kali lipat terima kasih :)
thesummersign
10

Yang berikut ini menyelesaikan masalah saya ... aplikasi saya bekerja untuk saya dalam debug / rilis, kemudian saya membangun beberapa arsip ad-hoc dan build debug / release berhenti bekerja.

Gejala:

  • kesalahan kepemilikan yang tidak valid saat meluncurkan dari Xcode ke perangkat (bermain dengan kepemilikan ...)
  • batalkan segera tanpa kesalahan (selesai berjalan) saat menjalankan simulator
  • tidak dapat meluncurkan ... direktori blabla ... / build / produk / debug-iphoneos / ... tidak ditemukan saat meluncurkan dari Xcode ke perangkat.

Akhirnya setelah mencoba mengambil manfaat dari rasa sakit orang lain yang saya temukan di Target [AppName]:

Build Settings
Build Locations
Build Products Path build

seharusnya

Build Products Path build/Products

Tidak tahu bagaimana ini diatur secara tidak benar. Ini harus di-kode di suatu tempat di Xcode / Springboard karena 'Produk' muncul di Xcode dan di konsol Perangkat. Ini adalah Xcode 4.5.1.

tangkapan layar untuk tempat pembuatan / Produk

KeithL
sumber
1
Bisakah Anda memformatnya agar maknanya sedikit lebih jelas? Tidak jelas bagaimana cara memasukkannya.
karendanya
1
Wow, terima kasih banyak Keith. Setelah 4 jam frustasi ternyata inilah penyebabnya. Bagaimana dunia itu bisa berubah berada di luar jangkauan saya.
karl_
1
Ya itu menyelesaikan masalah saya, tetapi mengapa ini terjadi ?!
Ali
7

Saya memecahkan masalah ini dengan

mengganti nama direktori di atas proyek XCode saya

Mengubah nama proyek XCodetetap untuk saya.

Di XCode, di bawah Navigator Proyek, klik nama proyek, dan itu akan membiarkan Anda mengubah nama seperti file di Finder. Menghapus data turunan tidak membantu.

Scott Driscoll
sumber
Itu berhasil untuk saya, untuk beberapa alasan gagal ketika saya memiliki ruang putih dalam nama proyek. Berganti nama menjadi tidak ada ruang putih dan itu berjalan dengan baik.
rita
6

Saya membangun Proyek XCode saya dengan CMake dan entah bagaimana itu (atau diri saya yang bodoh) menghapus atau mengosongkan properti "File yang dapat dijalankan" di info.plist. Saya mengembalikannya ke $ {EXECUTABLE_NAME} dan berhasil lagi.

Butuh waktu lama bagi saya untuk mengerjakan semua saran dan perbaikan sampai akhirnya saya menemukan masalah itu.

Semoga ini bisa membantu seseorang yang berjuang dengan masalah yang sama

Edit:

Itu dalam beberapa cara CMake mengacaukan file plist saya. Saya membuat Info.plist saya sendiri dan menggunakannya dengan cara berikut:

SET_TARGET_PROPERTIES( MyApp PROPERTIES MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_LIST_DIR}/MyApp.plist )

Di dalam plist saya, saya memiliki entri ini:

<key>CFBundleExecutable</key> <string>${EXECUTABLE_NAME}</string>

Sayangnya CMake tampaknya masih mem-parsing file itu dan mengganti $ {EXECUTABLE_NAME} dengan string kosong karena merupakan sintaks variabel CMake. Pekerjaan cepat saya adalah sebagai berikut:

SET( EXECUTABLE_NAME "\${EXECUTABLE_NAME}" )

Sekarang ini berfungsi seperti pesona.

Saya mungkin sendirian dengan masalah ini, tetapi siapa yang tahu.

ecreif
sumber
Bagus. Saya tidak sengaja menghapus file .plist saya dan ini adalah salah satu properti yang perlu saya tambahkan lagi. Terima kasih
The set(EXECUTABLE_NAME "\${EXECUTABLE_NAME}")persis apa yang saya butuhkan. Saya menambahkan baris ini di bagian bawah file toolos ios saya dan memperbaikinya tanpa cacat. Terima kasih banyak!
Deathicon
5

Saya memiliki masalah yang sama, tetapi dalam kasus saya, saya memiliki persyaratan yang salah di info saya. Daftar (memerlukan giroskop untuk iPhone 3Gs)

Unfalkster
sumber
4

Saya mencoba menjalankan proyek saya pada sistem yang berbeda dari yang dikembangkan. Saya mendapatkan "Tidak dapat meluncurkan xxx.app: .. Tidak ada file seperti itu ..".

Menghapus aplikasi dari perangkat dan kemudian menghapus data yang berasal dari organizer di xcode untuk aplikasi. Agenda -> Proyek -> Turunan DAta -> Hapus

Masalah saya terpecahkan.

iSaalis
sumber
4

Anda harus menetapkan target penyebaran RENDAH daripada versi perangkat Anda

Jim Huang
sumber
4

Bagi saya, solusinya adalah hanya menggunakan profil penyediaan (non-distribusi) yang benar.

Saya default untuk selalu menggunakan profil penyediaan ad hoc saya, tetapi kemudian saya berubah untuk menggunakan profil pengembang (profil tim) saya dan itu menyelesaikan masalah. Saya pergi ke depan dan membersihkan direktori Data Berasal agar aman tetapi saya tidak tahu pasti apakah itu diperlukan.

XCode dulu memiliki peringatan yang mengatakan kepada Anda untuk menggunakan profil penyediaan yang benar tetapi pesan kesalahan itu tampaknya telah hilang di XCode 4.5.

TPoschel
sumber
Ini tentu saja merupakan keseluruhan kegagalan dan perbaikan, jelas banyak kegagalan XCode yang memerciki pesan kesalahan yang tidak membantu ini. Kali ini, bagi kami, dan beberapa lagi di bawah ini, tampaknya disebabkan oleh masalah sertifikat / penandatanganan / profil, Melempar beberapa yang sudah kadaluwarsa, dan memastikan bahwa saya menggunakan profil yang sama di mana-mana, (Seperti Jabolcnik di bawah ini , Saya memiliki beberapa akun dev, perusahaan saya dan saya sendiri.) Mengizinkan XCode untuk menjalankan aplikasi di perangkat.
Taryn
4

Saya mengalami masalah ini dengan solusi yang sangat aneh.

Masalah saya sedikit berbeda karena saya memiliki 2 sertifikat Pengembang di Keychain. Kami memiliki dua akun pengembang (misalkan AD dan BD).

1) Saya memang mengubah pengidentifikasi Bundle dari com.BD.game ke com.AD.game 2) Perangkat yang bermasalah dengan saya hanya masuk dalam profil penyediaan AD. 3) Saya tidak dapat men-debug game di iPad - meskipun perangkat memiliki profil penyediaan yang valid, saya memiliki sertifikat yang valid, saya me-restart Mac, perangkat, menginstal ulang Xcode ... tidak ada yang membantu.

Lakukan apa yang saya lakukan hari ini memeriksa file project.pbxproj untuk setiap entri aneh.

Apa yang saya temukan adalah Xcode menggunakan profil penyediaan yang tepat, tetapi menandatangani ipa / aplikasi dengan sertifikat yang salah.

"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer: **BD** (XX******)";

Setelah saya secara manual mengoreksi nama dan id; semuanya bekerja seperti pesona.

Jabolcnik
sumber
4

Saya mendapat kesalahan yang sama. Dalam kasus saya, saya menetapkan target penyebaran 6.1 dan mencoba menjalankan iPad iOS 5.1. Ketika saya mengubah target penempatan saya menjadi 4.3, masalah terpecahkan.


Masih memiliki masalah. Coba ini Putuskan sambungan perangkat Anda. Hapus aplikasi dari perangkat Anda. Keluar xcode. Sekarang mulai Xcode, hubungkan perangkat dan jalankan proyek. Seharusnya bekerja dengan baik.

Nijil Nair
sumber
4

Bagi saya (menggunakan iOS 7 dan Xcode 5), kesalahan hilang segera setelah saya melakukan "Add to Member Center" dengan perangkat saya di Organizer.

Bruce Cichowlas
sumber
Ini membantu. Namun saya perlu me-restart perangkat setelah itu untuk menghilangkan kesalahan.
Bouncing Bit
3

Saya ingin menyebutkan bahwa cara termudah untuk membuka folder DerivedData di Finder adalah sebagai berikut:

  1. Buka Penyelenggara.
  2. Klik pada "Proyek".
  3. Pilih proyek bermasalah Anda.
  4. Di sebelah jalur DerivedData, klik tombol panah kanan kecil.

Menghapus isi folder DerivedData berhasil untuk saya. Alih-alih menggunakan tombol "Hapus ...", Anda seharusnya lebih berhasil menghapus file secara manual melalui Finder.

pengguna444731
sumber
3

Pergi ke: Target proyek Anda -> Info dan dari CustoM Properti Target iOS menghapus Kemampuan Perangkat yang Dibutuhkan. Dalam kasus saya itu adalah armv7 dan armv7s.

Setelah itu aplikasi berhasil dibangun di iPhone 4 saya.

Ini adalah tampilannya setelah saya menghapus kedua persyaratan

Dejan Balaban
sumber
Saya melihat masalah yang sama, aplikasi akan berjalan pada 5S saya pertama kali tetapi tidak kali berikutnya, ternyata Kemampuan Perangkat yang Diperlukan saya setel ke "armv7", menghapus itu dari info daftar tetap
Cam Saul
2

Bagi saya, saya lupa bahwa saya memiliki "telepon" di "Kemampuan perangkat yang diperlukan" di daftar info. Dihapus itu, dan akhirnya berhasil di iPad saya.

ninjaneer
sumber
2

Bagi saya memulai kembali Xcode, membersihkan DerivedData dan memulihkan perangkat tidak cukup dalam banyak kasus, sampai saya tahu bahwa iTunes juga berjalan, dan setelah keluar dari iTunes semuanya bekerja dengan baik!

Jadi langkah saya sekarang sederhana:

1. Keluar dari Xcode.
2. Jika iTunes sedang berjalan, keluar dari iTunes.
3. Buka kembali proyek.

Tidak perlu menghapus aplikasi dari perangkat, bersihkan proyek atau mulai ulang / lepaskan perangkat. Saya pikir itu karena Xcode dan iTunes menggunakan beberapa perpustakaan umum (seperti yang Anda tahu, Penginstal Xcode selalu meminta untuk keluar dari iTunes saat menginstal iOS SDK).

parametr
sumber
2

Saya mengalami masalah ini dan mencoba sejumlah saran yang tidak berhasil untuk saya - kemudian saya menemukan saran untuk menghapus "Kemampuan perangkat yang diperlukan" dalam file -Info.plist (yang bagi saya termasuk layanan lokasi & gps) Itu berhasil! Saya kemudian menambahkan mereka kembali dan itu masih berfungsi .. lanjutkan angka. Ini adalah xCode 4.6.1 & aplikasi saya adalah pengembang dengan Phonegap / Cordova

Dylan Hamilton-Foster
sumber
Saya juga menemukan string kosong di sana dan itu memblokir organizer! Terima kasih atas tipnya!
PetrV
2

Saya sudah mencoba semua hal di atas tetapi tetap saja tidak berhasil. Saya memperbaiki masalah dengan mengubah lokasi bangunan yang diturunkan. File> Pengaturan proyek> "lokasi data turunan" berubah menjadi relatif-proyek. Atau Anda bisa memastikan jalur default memiliki izin untuk membaca / menulis.

wickedgk
sumber
1

Masalah saya sepertinya memilih memilih Portrait (tombol home top) sebagai Item 0 dalam orientasi Interface yang Didukung di plist saya. Menghapus atau memindahkannya ke bawah sepertinya memperbaiki masalah saya. Sosok pergi.

Becka11y
sumber
1

Saya juga mengalami masalah ini untuk aplikasi Universal dengan Xcode 4.5 di iPhone HANYA, di mana saya memiliki dua perangkat debug:

iPhone 4 iOS 5.1.1
iPad 1   iOS 5.1.1

Info.plist memiliki entri kosong di bawah "Kemampuan perangkat yang diperlukan" Saya tahu bahwa saya tidak memasukkan 'Item 0' yang kosong ini. Aplikasi memuat di iPhone sejak saya menghapus item kosong. Saya tidak mengalami masalah ini pada salah satu dari beberapa versi Xcode sebelumnya, Ini berarti Xcode 4.5 menangani item 'yang dimasukkan' ini secara berbeda untuk dua perangkat yang saya gunakan. Saya telah salah sebelumnya, tetapi ini sepertinya bug di Xcode 4.5.

mbarron
sumber
1

Ini mungkin tampak jelas tetapi Anda juga harus menetapkan target penempatan Anda ke sistem operasi yang dijalankan perangkat Anda.

Jadi, jika Anda meningkatkan ke iOS 6, itu akan menetapkan target penyebaran Anda ke iOS 6. Anda harus menggunakan ke 5.1 jika perangkat yang Anda uji masih berjalan 5.1.

Matt Hudson
sumber
1

Masalah saya akhirnya diselesaikan dengan memeriksa untuk memastikan bahwa productNameatribut di /* Begin PBXNativeTarget section */bagian project.pbxprojfile saya cocok denganname atribut tersebut.

Setelah mengeditnya sehingga sama, Xcode akhirnya menjalankan aplikasi di perangkat saya dengan benar!

Terima kasih kepada Max Weisel karena membantu saya! : D

Grantland Mengunyah
sumber
1

Menghapus folder data yang diturunkan tidak membantu saya. Menggunakan Xcode 4.4.2 satu - satunya solusi adalah membuka Organiser dan menghapus profil lama yang sudah kadaluwarsa dan tidak tersedia di iDevice. Kemudian semuanya bekerja dengan sempurna lagi.

Robert Wasmann
sumber
Ini tentu saja merupakan tantangan dari kegagalan dan perbaikan, jelas banyak kegagalan XCode yang memuntahkan tanah tak bertuan ini.
Taryn
1

Ini mungkin herring merah, tapi saya mengalami masalah ini ketika saya menambahkan gambar peluncuran khusus sebelum menghapus yang default. Menghapus peluncuran default dan gambar kustom dan kemudian menambahkan kembali yang kustom memperbaikinya untuk saya. Saya bekerja dengan iOS 6 dan Xcode 4.5.2

G O'Rilla
sumber
1

Tampaknya ada beberapa hal berbeda yang dapat menyebabkan pesan kesalahan yang sangat membantu ini.

Bagi saya, itu salah "Kemampuan perangkat yang diperlukan" di Info.plist. Saya telah menambahkan item array kosong karena kesalahan (di atas arsitektur, armv7). Menghapus item array kosong dan sekarang semuanya baik-baik saja!

MattP
sumber
1

Saya memiliki masalah ini dan tidak ada yang benar-benar membantu kecuali: Masalah saya mulai setelah mengubah isi info.plist saya dan tidak ada reverting yang membantu.

Yang memecahkannya bagi saya adalah:

  1. Buat vanilla info.plist dalam proyek baru
  2. ganti info.plist lama dengan yang baru
  3. mengganti nama itu (seperti app_info.plist)
  4. Setel Pengaturan Bangun / Pengemasan / INFOPLIST_FILE menjadi yang baru.
  5. Buat semua perubahan yang Anda butuhkan untuk proyek Anda

Semoga itu bisa membantu. Saya mencoba semua yang disarankan di sini dan ini adalah satu-satunya solusi bagi saya.

Capi Yoav Kedem
sumber
1

Menghadapi masalah yang sama tetapi sekarang masalah terpecahkan, saya menghapus Executable file info.plist. Saya mengembalikannya ke $ {EXECUTABLE_NAME} dan berhasil lagi .. :)

masukkan deskripsi gambar di sini

Rajneesh071
sumber
1

Dalam kasus saya, saya hanya mengatur 777 izin langsung ke folder xxx.app ke semua file dan bekerja!

Arthur Goulart
sumber