Xcode aniden donanımda projeyi çalıştırmayı durdurdu: “xxx.app başlatılamadı: .. Böyle bir dosya yok ..” [kapalı]


139

Xcode uygulamamı çalıştıramadı, cihazdan sildikten hemen sonra başladı ve Xcode'da (yüzlerce kez daha önce yaptığım bir şey) yeniden çalıştırarak yeniden yüklemeye çalıştı.

Diyor ki

"XXX.app başlatılamadı"

"Böyle bir dosya veya dizin yok (/Users/Mylaptop/Library/Developer/Xcode/DerivedData/MyApp-ekxcbebfpzkahtfkujyqkcwprzia/Build/Products/Debug-iphoneos/MyApps.app/MyApp)."

Telefonu yeniden başlattım, Xcode'u yeniden başlattım, her şeyi temizledim, her şeyi yeniden inşa ettim. Bu hata mesajı kaybolmayacak.

Bu, kullanılabilir hale geldiğinden beri kullandığım Xcode 4.5 ile, eğer 4.3.2'ye geri dönersem Xcode "Bitirilen uygulama" diyor ama aslında hiçbir şey yapmıyor - uygulama ne yüklü ne de çalışıyor.

Tamamen takıldım - artık cihazda hiçbir şey çalıştıramıyor.

Baska öneri?


4
Xcode'unuzdaki Düzenleyiciyi alın, projeler sekmesine basın ve projeniz için türetilmiş verileri silin ve projeyi temizleyin ve tekrar oluşturun ..
Dinesh Raja

2
Bunu yaptıktan sonra hala aynı şeyi alın. Xcode'u yeniden yüklemeyi deneyeceğim.
Gruntcakes

Uygulamanızı cihazda çalıştırma yolundaki oluşturma ayarlarınızda bir şey değiştirdiğinizi düşünüyorum
Dinesh Raja

9
Ne olduğunu öğrendim - info.plist'e cihaz özellikleri eklerken bir şekilde yeni bir satır ekledim ama bir değer vermedim.
Gruntcakes

1
Elde edilen verileri silerken sonunda benim için çalıştı, ancak iPad ve OS / X'i yeniden başlatana kadar, elde edilen verileri silmek için Finder'ı kullandıktan sonra çöp kutusunu boşalttım ve bir USB portu üzerinden bağlı bir BLE çevre birimini çıkardıktan sonra yardımcı olmadı. Hangi adımların gerekli olduğunu bilmiyorum - XCode daha sonra ekli BLE çevre birimi ile derlenmiş - ancak bir kez tüm bu adımları türetilmiş verileri silmek için eklendi, proje iyi derlenmiş.
Mike

Yanıtlar:


125

Bu gerçekten sinir bozucu. Bu hata birkaç farklı durumda ortaya çıkar. Bazen Xcode'u yeniden başlatmak sorunu çözer. Değilse, şu adımları izleyin:

Cihazınızın bağlantısını kesin.

Uygulamayı cihazınızdan silin.

Xcode'dan çıkın (Sadece pencereyi kapatmayın, çıkın)

Türetilmiş veri klasörünü ( ~/Library/Developer/Xcode/DerivedData/-gbrvhlvwmpiobxdujegtghggrffp- veya bunun gibi bir şeyi) silin

Şimdi Xcode'u bir kez daha başlatın, cihazı bağlayın ve projeyi çalıştırın. İyi çalışmalı.

DhilipSiva blogundan


4
Benim için anahtar buydu. Yanıttaki ayrıntı düzeyini takdir edin.
Jason Pawlak

Bu platform üzerinde çalışırken "gerçekten sinir bozucu" şeylerden sadece biri
rushinge

2
çalışmıyor ... cihazda çalışıyorum
Rajneesh071

Yukarıdaki adımlar sorunu çözmedi. Hala "<app> çalıştırılamadı. <App> bulunamadı" mesajını alıyorum.
user298261

benim için çalıştı, bunu deneyin
Muhammed Waqas

57

-Info.plist dosyasındaki "Gerekli aygıt özellikleri" ni silmeyi deneyin.

3G'de armv7'ye ihtiyacınız yoktur ve daha yeni bir cihazda armv6'ya ihtiyacınız yoktur, bu nedenle bu özelliği tamamen silin.


2
Benim için çalışan tek çözüm bu. Zaten sertifikaları yenilemeye çalışıyor, cihazı yeniden başlatan klasörleri temizliyor, xcode ve mac hiçbir işe yaramadı. Sadece özniteliği silin ve yüklü ve iyi çalıştı.
automaticoo

1
Bu çözüm benim için de işe yaradı - garip bir hata.
misnomer

Ayrıca, kurulumda geçerli mimarilerin armv6, armv7 ve armv7'leri de içerdiğinden emin olmalıydım (şimdi XCode 4.5 kullanıyorum ... Bunun birkaç ay olduğunu biliyorum, ancak bahsetmeye değer.) Ayrıca, bu üç liste olmalı Mimariler bölümünde.
David Morton

Bunu denedim, sevinç yok ama Sudhakar + Jagger cevabı işe yaradı. Xcode 4.5.1 ve bir iPad1
mm2001 26:12

Benim için sorun buydu: Uygulamamın gerekli bir yetenek olarak "telefonu" vardı ve uygulamayı yalnızca WiFi özellikli bir iPad mini'de çalıştırmaya çalışıyordum.
Chitza

38

Cevabı buldum. İOS dağıtım hedefinin sürümü, cihazımın OS sürümüyle aynı değildi.


Benim için de yaptı. Nedense XCode her zaman projemin dağıtım hedefini 6.0'a sıfırlamak istiyor.
Donald Burr

3
benim için de çalıştı ... Cihaz türünü "iPhone" yerine "Universal" olarak değiştiriyordum ve xcode otomatik olarak hedefi ilk başta fark etmediğim 6.0 olarak değiştirdi. 4.3'e geri döndü ve işe yaradı ...
Jim Jose

DerivedData ve gerekli cihaz yeteneklerini kaldırmak çok kötü değildi, bu yüzden dağıtım hedefimi 6.1'den 5.0'a ayarladım ve iOS 5.1 çalıştıran iPod Touch'ımda çalıştı.
Richard Altenburg - Brainchild

Tanrım. kaç kere aynı başarısızlığı yapacağım ...
heximal

Bu benim için bir
çözümdü

13

Öncelikle yukarıdakilerden bazılarını info.plists ile denedim ve türetilmiş verileri silme, temiz, vb.

Benim çözümüm: XCode'dan çıkın, projeyi yeniden açın. Finder'da türetilmiş verilere gidin. Tüm projeler için veri silindi (hepsi okunabilirdi, ancak önce sorunlu proje verilerinizi silmeyi deneyeceğim). Ve sonra tekrar çalıştı. XCode'dan türetilmiş verilerin silinmesi işe yaramadı.


4
Türetilmiş veri klasörünün yolu: / Users / <User> / Library / Developer / Xcode / DerivedData /
Pascalius 15:12

Bu benim sorunum çözüldü + Tüm klasörleri silmek 10 GB bellek serbest bıraktı çok teşekkürler :)
thesummersign

10

Aşağıdaki sorunumu çözdü ... benim app hata ayıklama / serbest bırakma benim için çalıştı, sonra birkaç geçici arşiv inşa ve hata ayıklama / serbest bırakma yapıları çalışma durdu.

Semptomlar:

  • Xcode'dan cihaza başlatılırken geçersiz yetkiler hataları (yetkilerle oynayın ...)
  • simülatörü çalıştırırken hatasız (çalışmayı bitirdi) hemen iptal
  • başlatılamadı ... dizin blabla ... / build / product / debug-iphoneos / ... Xcode'dan cihaza başlatılırken bulunamadı.

Sonunda herkesin acılarından yararlanmaya çalıştıktan sonra Hedefler [AppName] 'de buldum:

Build Settings
Build Locations
Build Products Path build

olmalı

Build Products Path build/Products

Bunun nasıl yanlış ayarlandığı hakkında hiçbir fikrim yok. Bu, Xcode / Springboard'da bir yerde sabit olarak kodlanmalıdır, çünkü hem Xcode hem de Cihaz konsolunda 'Ürünler' görünür. Bu Xcode 4.5.1.

ekran görüntüsü nerede kurmak için kurmak / Ürünler


1
Anlamını biraz daha açık hale getirmek için bunu biçimlendirebilir misiniz? Nasıl girileceği belli değil.
itsbruce

1
Vay canına, bir demet Keith'e teşekkürler. 4 sinir bozucu saat sonra bunun nedeni ortaya çıktı. Dünyada nasıl değiştiği benim dışımda.
karl_

1
Evet sorunumu çözdü, ama bu neden oldu ?!
Ali

7

Bu sorunu çözdüm

XCode projemin üstündeki bir dizini yeniden adlandırma

Projenin adını değiştirmek XCodebenim için düzeltildi.

İçinde XCode, Proje Gezgini altında, proje adını tıklatın ve bu dosyayı Finder'daki bir dosya gibi yeniden adlandırmanıza izin vermelidir. Türetilmiş verilerin silinmesi yardımcı olmadı.


Bunu benim için yaptı, nedense proje adında boşluk kaldığında başarısız oldu. Beyaz boşluk olarak yeniden adlandırıldı ve iyi çalışıyor.
rita

6

XCode Projemi CMake ile oluşturdum ve bir şekilde (veya aptal kendim) info.plist'deki "Yürütülebilir dosya" özelliğini sildi veya boşalttı. Tekrar $ {EXECUTABLE_NAME} olarak ayarladım ve tekrar çalıştı.

Nihayet bu sorunu bulana kadar tüm öneriler ve düzeltmeler üzerinde çalışırken gerçekten çok zaman aldı.

Umarım bu aynı problemle mücadele eden birine yardımcı olur

Düzenle:

Bir şekilde CMake plist dosyamı karıştırıyordu. Kendi Info.plist'imi oluşturdum ve şu şekilde kullandım:

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

Benim plist içinde bu giriş vardı:

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

Ne yazık ki CMake hala bu dosyayı ayrıştırıyor ve CMake değişkeni sözdiziminden bu yana $ {EXECUTABLE_NAME} yerine boş bir dize koydu. Etraftaki hızlı çalışmam şöyledir:

SET( EXECUTABLE_NAME "\${EXECUTABLE_NAME}" )

Şimdi bir cazibe gibi çalışıyor.

Muhtemelen bu problemle yalnızım ama kim bilir.


Güzel. Yanlışlıkla .plist dosyamı kaldırdım ve bu, tekrar eklemem gereken özelliklerden biriydi. Teşekkürler

set(EXECUTABLE_NAME "\${EXECUTABLE_NAME}")Tam olarak ihtiyacım olan şeydi. Bu satırı ios toolchain dosyamın altına ekledim ve kusursuz bir şekilde düzeltti. Çok teşekkürler!
Deathicon

5

Aynı sorunu yaşadım, ancak benim durumumda info.plistimde yanlış bir gereksinim vardı (iPhone 3G'ler için jiroskop gerektiriyor)


4

Projemi, geliştirilenden farklı bir sistemde çalıştırmayı denedim. “Xxx.app başlatılamadı: .. Böyle bir dosya yok ..” alıyordum.

Uygulamayı cihazdan kaldırdıktan sonra, türetilmiş verileri uygulama için xcode'daki düzenleyiciden sildi. Ajanda -> Projeler -> Türetilmiş Veriler -> Sil

Sorunum çözüldü.


4

Dağıtım hedefini cihazınızın sürümüne göre DAHA düşük olarak ayarlamanız gerekiyor


4

Benim için çözüm sadece doğru (dağıtım dışı) ön hazırlık profilini kullanmaktı.

Ben her zaman geçici hazırlık profilimi kullanmayı varsayılan olarak kullanıyordum, ancak geliştirici profilimi (ekip profili) kullanmayı değiştirdim ve bu şeyleri çözdü. Devam ettim ve Türetilmiş Veri dizinini güvenli bir şekilde temizledim, ancak gerekli olup olmadığından emin değilim.

XCode, önceden doğru ön hazırlık profilini kullanmanızı söyleyen bir uyarıya sahipti, ancak bu hata iletisi XCode 4.5'te yok gibi görünüyor.


Bu kesinlikle başarısız ve düzeltmelerden oluşan bir catchall, açıkçası bir sürü XCode hatası bu yararsız hata mesajına sıçradı. BU zaman, bizim için ve birkaç aşağıda, sertifika / imzalama / profil sorunları, süresi dolmuş eski birkaç taneyi atmak ve aynı profilleri her yerde kullandığımdan emin olmak gibi görünüyordu (aşağıdaki Jabolcnik gibi) , Birkaç dev hesabım var, işverenim ve kendim.) XCode'un uygulamayı cihazda çalıştırmasına izin verdi.
Taryn

4

Bu sorunu çok garip bir çözümle yaşadım.

Keychain'de 2 Geliştirici sertifikam olduğu için sorunum biraz farklıydı. İki geliştirici hesabımız var (AD ve BD diyelim).

1) Paket tanımlayıcısını com.BD.game yerine com.AD.game olarak değiştirdim 2) Sorun yaşadığım aygıt yalnızca AD sağlama profillerinde imzalandı. 3) iPad'de oyunda hata ayıklayamadım - cihazın geçerli ön hazırlık profilleri olmasına rağmen, geçerli sertifikalarım vardı, Mac'i, cihazı yeniden yükledim, Xcode'u yeniden kurdum ... hiçbir şey yardımcı olmadı.

Bugün yaptım ne garip girişler için project.pbxproj dosyasını inceliyordu.

Bulduğum şey, Xcode'un uygun sağlama profilini kullanmasıydı, ancak ipa / uygulamayı yanlış sertifika ile imzaladı.

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

Ben manuel olarak adı ve kimliği düzelttikten sonra; her şey cazibe gibi çalışır.


4

Aynı hatayı aldım. Benim durumumda dağıtım hedefini 6.1 olarak belirledim ve bir iOS 5.1 iPad'i çalıştırmaya çalıştım. Dağıtım hedefimi 4.3 olarak değiştirdiğimde sorun çözüldü.


Sorun hala devam ediyor. Bunu deneyin Cihazınızın bağlantısını kesin. Uygulamayı cihazınızdan silin. Xcode'dan çıkın. Şimdi Xcode'u başlatın, cihazı bağlayın ve projeyi çalıştırın. İyi çalışmalı.


4

Benim için (IOS 7 ve Xcode 5 kullanarak), cihazımda Organizatör'de "Üye Merkezine Ekle" yaptıktan hemen sonra hata ortadan kalktı.


Bu yardımcı oldu. Ancak hatadan kurtulmak için cihazı yeniden başlatmam gerekiyordu.
Zıplayan Bit

3

Finder'da DerivedData klasörünü açmanın en kolay yolunun aşağıdaki olduğunu belirtmek isterim:

  1. Düzenleyiciyi açın.
  2. "Projeler" i tıklayın.
  3. Sorunlu projenizi seçin.
  4. DerivedData yolunun yanındaki küçük sağ ok düğmesine tıklayın.

DerivedData klasörünün içeriğini silmek benim için çalıştı. "Sil ..." düğmesini kullanmak yerine, dosyaları Finder üzerinden el ile silmede daha başarılı olmalısınız.


3

Projeniz Hedef -> Bilgi'ye gidin ve CustoM iOS Hedef Özellikleri'nden Gerekli Cihaz Özelliklerini kaldırın. Benim durumumda armv7 ve armv7'lerdi.

Bundan sonra uygulama iPhone 4'ümde başarıyla oluşturuldu.

Her iki gereksinimi de kaldırdıktan sonra böyle görünüyor


Aynı sorunu görüyordum, uygulama ilk kez 5S'imde çalışacaktı, ancak daha sonra değil, Gerekli Cihaz Yeteneklerim "armv7" olarak ayarlandı, bunu bilgi plistinden kaldırıldı
Cam Saul

2

Benim için, info.plist'deki "Gerekli cihaz özellikleri" nde "telefonum" olduğunu unuttum. Bunu kaldırdım ve sonunda iPad'imde çalıştı.


2

Benim için Xcode'un yeniden başlatılması, DerivedData'nın temizlenmesi ve cihazın yeniden başlatılması çoğu durumda, iTunes'un da çalıştığını anlayana ve iTunes'dan çıktıktan sonra her şey yolunda gitti!

Yani benim adım şimdi basit:

1. Xcode'tan çıkın.
2. iTunes çalışıyorsa iTunes'dan çıkın.
3. Projeyi yeniden açın.

Uygulamayı cihazdan kaldırmanıza, projeyi temizlemenize veya cihazı yeniden başlatmanıza / bağlantısını kesmenize gerek yoktur. Bence Xcode ve iTunes bazı ortak kütüphaneler kullanıyor (bildiğiniz gibi Xcode Installer her zaman iOS SDK'yı yüklerken iTunes'dan çıkmayı istiyor).


2

Ben bu sorunu vardı ve benim için işe yaramadı önerileri bir dizi çalıştı - sonra -Info.plist dosyasında (benim için location-services & gps dahil) "Gerekli aygıt yetenekleri" kaldırma hakkında bir tane buldum İşe yaradı! Sonra onları tekrar ekledim ve hala işe yaradı. Bu xCode 4.6.1 idi ve uygulamam Phonegap / Cordova ile geliştiricidir


Ben de orada boş dize buldum ve organizatör engelliyordu! Bahşiş için teşekkürler !
PetrV

2

Yukarıdakilerin hepsini denedim ama yine de çalışmadı. Türetilmiş yapı konumunu değiştirerek sorunu çözdüm. Dosya> Proje ayarları> "türetilen veri konumu" projeye göre değişir. Veya varsayılan yolun okuma / yazma iznine sahip olduğundan emin olabilirsiniz.


1

Sorunum plistimdeki Desteklenen Arayüz yönlerinde Öğe 0 olarak Portre (üst ana düğme) seçiyor gibi görünüyordu. Bunu kaldırmak veya aşağı taşımak sorunumu çözüyordu. Git şekil.


1

Bu sorunu SADECE iPhone'umda Xcode 4.5 bulunan bir Evrensel uygulama için de vardı, burada iki hata ayıklama cihazı vardı:

iPhone 4 iOS 5.1.1
iPad 1   iOS 5.1.1

Info.plist "Gerekli aygıt özellikleri" altında boş bir giriş vardı Bu boş 'Öğe 0' girmediğimi biliyorum. Boş öğeyi kaldırdığım için uygulama iPhone'a yüklenir. Xcode önceki birkaç sürümünde bu sorunla karşılaşmadım, Bu Xcode 4.5 kullandığım iki cihaz için bu 'eklenen' öğeyi farklı işlediği anlamına gelir. Daha önce yanılmışım, ancak bu Xcode 4.5'te bir hata gibi görünüyor.


1

Bu açık gibi görünebilir, ancak dağıtım hedefinizi cihazınızın çalıştığı işletim sistemine de ayarlamanız gerekir.

Bu yüzden iOS 6'ya yükseltirseniz, dağıtım hedefinizi iOS 6'ya ayarlar. Test ettiğiniz cihaz hala 5.1 çalışıyorsa 5.1'e dağıtmanız gerekir.


1

Sorunum sonunda dosyamın bölümündeki productNameözelliğin eşleştiğinden emin olmak için kontrol edilerek çözüldü/* Begin PBXNativeTarget section */project.pbxprojname .

Aynı olduklarından sonra düzenledikten sonra Xcode, uygulamayı cihazımda doğru bir şekilde çalıştırıyor!

Bana yardım ettiği için Max Weisel'e teşekkürler! : D


1

Türetilmiş veri klasörünü silmek bana yardımcı olmadı. Xcode 4.4.2'yi kullanarak tek çözüm, Organizer'ı açmak ve iDevice'deki eski süresi dolmuş ve gereksiz sağlama profillerini silmekti. Sonra her şey tekrar mükemmel çalıştı.


Bu kesinlikle bir başarısızlık ve düzeltmeler catchall, açıkçası bir sürü XCode hatası bu no-man's land aşağı sıçramak.
Taryn

1

Bu kırmızı bir ringa balığı olabilir, ancak varsayılan görüntüleri silmeden önce özel başlatma görüntüleri eklediğimde bu sorunlarla karşılaştım. Varsayılan başlatma ve özel görüntüleri silmek ve sonra özel olanları geri eklemek benim için düzeltildi. İOS 6 ve Xcode 4.5.2 ile çalışıyorum


1

Bu çok yararlı hata mesajına neden olabilecek birkaç farklı şey var gibi görünüyor.

Benim için, Info.plist'te yanlış bir "Gerekli cihaz özellikleri" ne bağlıydı. Yanlışlıkla boş bir dizi öğesi ekledim (mimarinin üstünde armv7). Boş dizi öğesini sildi ve şimdi her şey yolunda!


1

Bu sorun vardı ve gerçekten hiçbir şey dışında yardımcı oldu: Benim sorunum info.plist içeriğini değiştirdikten sonra başladı ve hiçbir geri alma yardımcı olmamıştı.

Benim için çözen şey:

  1. Yepyeni bir projede vanilya info.plist oluşturun
  2. eski info.plist'i yenisiyle değiştir
  3. yeniden adlandırma (app_info.plist gibi)
  4. Derleme Ayarları / Paketleme / INFOPLIST_FILE ayarını yenisi olarak ayarlayın.
  5. Projeniz için gereken tüm değişiklikleri yapın

Umarım yardımcı olur. Burada önerilen her şeyi denedim ve bu benim için tek çözümdü.


1

Aynı sorunla karşı karşıya ama şimdi sorun çözüldü, ben Executable file info.plist sildi . Tekrar $ {EXECUTABLE_NAME} olarak ayarladım ve tekrar çalıştı .. :)

resim açıklamasını buraya girin


1

Benim durumumda sadece 777 iznini doğrudan xxx.app klasörüne tüm dosyalara ve işe ayarlıyorum!

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.