web-dev-qa-db-ja.com

プロセスID Xcodeに接続できませんでした

誰もこの問題を経験しましたか?昨日はまだシミュレータでアプリを実行できますが、Xcodeがコンソールにこのエラーを出力するため、アプリを実行できません。

error: failed to attach to process ID <ID number>

Screenshot for error

私は再インストールしようとしましたが、これを行います post そして新しいプロジェクトを作成しますが、運が返りません。誰でもこの問題を解決できますか?

Xcode 4.5 Preview 2を使用して、iOSシミュレーター6を実行しようとしました

108
Rendy

シミュレーターのコンテンツと設定をリセットするとうまくいきました。これは「iOSシミュレータ」メニューで利用できます。

151
Robert Zahm

[製品]メニューに移動し、[スキームの編集]メニューを見つけます。

[スキームの編集]ウィンドウで、画面の左側で[実行]オプションを選択し、右側でデバッガーをLLDBからGDBに変更します。

45
Imran

同じ問題が発生しましたが、しばらくすると、XCodeプロジェクトに Folder Reference という名前のフォルダーへの-が含まれていることが原因であることがわかりました。 リソース

XCodeはその名前が気に入らないようです。

フォルダ参照を削除するまたはフォルダの名前を変更するだけで問題は解決しました。

21
Mirko Luchi

2つの方法

メソッド1:フォルダ内アプリケーションサポート-> iPhone Simulator-> iOSの各シミュレータバージョン->アプリケーション->ここに存在するすべてのファイルを削除します。

次にProducts-> Cleanに移動します

シミュレータで実行すると動作します。

メソッド2

Tap on Reset

20
Ambili B Menon

ステップ1:ping

$ ping localhost

これは次のようなものを返すはずです

PING localhost (127.0.0.1): 56 data bytes
64 bytes from 127.0.0.1: icmp_seq=0 ttl=64 time=0.028 ms
64 bytes from 127.0.0.1: icmp_seq=1 ttl=64 time=0.048 ms
...

これが機能する場合、この回答は問題を解決しません。他の方法を試してください。

Pingが何か他のものを返す場合:ping: cannot resolve localhost: Unknown Host何かが/etc/hostsファイルで台無しになっている場合は、ステップ2に進みます

ステップ2:/ etc/hostsを確認する

/etc/hostsファイルの先頭が次のようになっていることを確認します

127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost 
fe80::1%lo0     localhost

ファイルにこれらのエントリがない場合は、ファイルの先頭に入力し、$ dscacheutil -flushcacheを使用してDNSキャッシュをフラッシュし、ステップ1、それ以外の場合はステップ3に進みます。

ステップ3:正しいファイル形式:UnixまたはLF *

$ file /etc/hosts

これは以下を返すはずです:/etc/hosts: ASCII English text

/etc/hosts: ASCII English text, with CR line terminatorsのようなものを返す場合、ファイルは間違った形式であり、おそらく無視されています。

任意のテキストエディターを使用して、ファイル行の末尾をunixまたはLFに変更します。

  • Sublime Text 2では、これはビューメニューで実行できます:View> Line Endings> Unix

DNSキャッシュをフラッシュし($ dscacheutil -flushcache)、ステップ1に戻ります

8
Intentss

Fundtimerの回答と同様に、ローカルホストファイルが原因であるようです。

不注意な変更の後、/etc/hostsパーミッションをデフォルトに戻す必要がありました。

Sudo chmod 644 /etc/hosts

その後、シミュレーター/ LLDBが機能しました。

5
amattn

これは古いトピックですが、macOSの最新バージョンでは状況が少し変わったと思います。

MacOS Mojave BetaおよびXcode 9.4.1のシミュレーターでiOSアプリのUIテストスイートを実行しようとしたときに問題に遭遇しました。

MacOS Mojaveでは、codesignツール(OSの一部であり、コマンドラインツールまたはXcodeの一部ではありません)は、プロセスにhardened runtimeランタイムコード署名の強制、ライブラリ検証、ハード、キル、およびデバッグの制限を含む環境。これは、macOS Mojaveのシステム整合性保護とともに、lldbデバッガーが実行中のターゲットに接続するのを防ぎます。

これを解決するには、オプションが必要です。

  1. おそらく、Xcode 10を使用するだけです。接続を適切に処理するようです。

  2. OSを回復モードで再起動し、csrutil disableを使用して端末からシステムの整合性保護をオフにします。その後、デバッガーは問題なく接続します。

私はこれにかなりの時間を費やし、次の記事を読んだ後にすべて解決することができました: http://www.lapcatsoftware.com/articles/debugging-mojave.html =

ちょうど私の2セント。これが誰かを助けることを願っています。

5
eploko

これは古い質問ですが、「プロセスIDにアタッチできませんでした」というGoogle検索を行ったときに最初に出てきました。 Xcode 7を使用しています。iOS9がリリースされ、SwiftアプリをSwift 2に更新した後に起こりました。

シミュレーターでアプリを削除し、新しいビルドを実行して実行すると、クリアされました。

4

/ etc/hostsファイルから何らかの理由でレコードを削除または削除しましたが、同じエラーが発生しました。/etc/hostsファイルに「127.0.0.1 localhost」という行があるかどうかを確認する必要があります。これは私を助けました!

4
pedrouan

アプリケーションをシミュレータから削除しただけで(実際のデバイスで実行するのと同じように)、再実行するとすべてが正常に機能しました。

2
Nic Foster

私も同じ問題を抱えており、私にとっての解決策は:-

シミュレーターからアプリを削除してから、プロジェクトをクリアして実行します。

他の人にも役立つことを願っています。

2
Muhammad Rizwan

私の場合、解決策は異なっていました。実行モードは「リリース」でした。 「デバッグ」に変更すると修正されました。 Xcode 4.5.xでは問題ありませんでした。

1
orip

XCodeとシミュレーターを終了することでこの問題を解決しました。プロジェクトを再度開きます。できた.

1

XCode 9以降で次の操作を行います:XCodeメニューに移動します:Product-Scheme-Edit Schemeand underRun タブ(Debug Executable)チェックボックスがチェックされていることを確認してください!それでおしまい!

enter image description here

1
joan

私はIonic 2アプリケーションに取り組んでいますが、これに加えてXcodeやシミュレーターにも慣れています。
当初、私のアプリはシミュレーターで動作していましたが、しばらくすると次のようなエラーが生成され始めました。
xcodeエラー:プロセスIDへのアタッチに失敗しました

上記のすべての回答を検索しましたが、問題は解決しませんでした。
次に、マシンのセットアップを更新しました( Ionicnpmcordova

******************************************************
 Dependency warning - for the CLI to run correctly,      
 it is highly recommended to install/upgrade the following:     

 Install ios-deploy to deploy iOS applications to devices.  `npm install -g ios-deploy` (may require Sudo)

******************************************************

Your system information:

Cordova CLI: 6.4.0 
Ionic Framework Version: 2.0.0-beta.10
Ionic CLI Version: 2.1.8
Ionic App Lib Version: 2.1.4
ios-deploy version: Not installed
ios-sim version: 5.0.8 
OS: OS X Yosemite
Node Version: v6.2.2
Xcode version: Xcode 7.2 Build version 7C68



******************************************************

この後、アプリケーションのホームディレクトリからコマンドを実行するだけです

  1. イオンラン-l
  2. イオンビルドios。
  3. xcodeの変更をxcodeにインポートしました。
  4. コンテンツと設定をリセット-
    enter image description here
  5. xcodeから製品をクリアします。
    enter image description here
  6. Xcodeを実行すると、シミュレータで動作します。

これを見てうれしい!!!

1
S.Yadav

私にとっての問題は、かなり愚かな間違いが原因でした。既存のターゲットを複製してプロジェクトの新しいターゲットを作成し、ターゲットのinfo.plistファイルのBundle Identifierを変更するのを忘れました。

1
mwidmann

デバイスでデバッグするときに同じ問題が発生しました。アプリは起動時にクラッシュしましたが、実行中のプロセスとして表示されませんでした。

私の解決策は、プロセスビューアーアプリ(システムステータスなど)を使用することです。古くなったアプリを見つけてから、親プロセスidを見つけます。通常はdebugserver

Xcodeに進み、製品->プロセスにアタッチ->プロセスIDでdebugserverプロセスPIDにアタッチ少し待ってからStopボタンを押します。

古いdebugserverおよびappプロセスが消えます。

(シミュレーターを使用する場合、同等のものは端末、psを使用し、Appプロセスを強制終了することです。しかし、それを試したことはありません)。

1
Ramon Poca

上記の答えは本当に助けになりました。 https://stackoverflow.com/a/12819757/1752988 私のXCodeでは、ストーリーボードとカスタムビューコントローラーを使用したためです。また、警告リストで、nibファイルの一部が欠落していることを確認しました。私はそれを見ることでリードを逃しました。しかし、私はこの答えを見ました。AppSimulatorのコンテンツをリセットするのは好きではありませんでしたが、私はそれをやりました。

また、製品->スキーム->スキームの編集(実行)をLLDBからGDBに変更することもできませんでした。

追伸:-申し訳ありませんが、上記の回答に15の評判があるか、上記の50の評判ポイントがないため、上記のサポートコメントとしてこの回答を追加しました。

1
Randika Vishman

これを開発者フォーラムに投稿しました。それは簡単な解決策であり、ここで誰かを助けるかもしれません:

私はまったく同じ問題を抱えていました:Xcode 4.xxの現在のバージョンとLLDBデバッガー、およびシミュレーターのすべてのバージョンを使用すると、XCodeは一貫して「プロセスに接続できませんでした...」でクラッシュしましたGDBデバッガー。 XCode 4.6-DPで新しく堅牢なLLDBを試してみたかったので、これは期待はずれでした。

そして、私は思い出した。いくつかのApache2サーバー仮想ホストに対応するために、しばらく前に... etc/hostsのネットワーク/サーバーホストファイルを変更しました。つまり、次の行を削除しました。

127.0.0.1 locahost

それでした。その行を削除すると、LLDBでシミュレーターに接続するとXCodeがクラッシュしました。その行を復元すると、XCodeはLLDBおよびシミュレーターで正常に機能しました。

とにかく、これはあなたの問題ではないかもしれませんが、探索する価値があります。私の知る限り、これは深刻な文書化されていないバグです。

1
fundtimer

以下はiOS 9.1で私のために働いた:

  1. シミュレーターからアプリをアンインストールするだけです
  2. シミュレーターを終了します(Cmd + Q)
  3. Xcodeプロジェクトをきれいにする
  4. シミュレーターで実行

注:シミュレーターをリセットする必要はありません。

1
Arjun Shukla

Xcode派生データのコンテンツを削除することで、この問題を修正しました。

FinderでShift + CMD + Gを押し、パスの下に入力して、DerivedData内のすべてのデータを削除します。

  ~/Library/Developer/Xcode/DerivedData

enter image description here

シミュレーターのビルドもリセットする

     ~/Library/Application Support/iPhone Simulator/6.0/Applications 
1
Guru

複数のユーザーがマシンにログインしていますか?ラップトップに「個人」アカウントと「仕事」アカウントがあります。個人アカウントからデバッグしようとしたときにこのエラーが発生しましたが、作業アカウントでシミュレータを実行したままにしました。他のアカウントでシミュレータを終了すると、問題が解決しました。

0
bugloaf

今日これを走りました。ターゲット設定から誤って起動画像を削除しました。

0
PWiggin

@eplokoがMojaveの回答で述べたように、デバッグ可能性ポリシーが変更されました。この答えは、Xcode 9.4.1およびMojaveを使用してテストフレームワークを実行する際に問題がある場合のみです。

Appleによると、これは意図した動作なので、2つの解決策があります。

  1. Xcode 10を使用すると、問題はなくなります。
  2. テストターゲットのスキームエディターでデバッガーを無効にします。

そのためには、テストターゲットを選択してから、Edit Schemeを選択します。そこになったら、左側のTestセクションを選択し、Debug executableのチェックを外します。

enter image description here

詳細はこちら レーダー 。これがあなたのお役に立てば幸いです。

0
Victor Sigler

記録のためのもう一つ:(提案のどれも私のために働いた)

Mountain Lion:XCode 4.6.

  • I moved the whole Application to Trashおよび他のフォルダーを削除しました
  • /Users/[USERNAME]/Library/Developer
  • /Users/[USERNAME]/Library/Caches/com.Apple.dt.XCode
  • /Users/[USERNAME]/Library/Application Support/iPhone Simulator

  • システムを再起動し、XCodeを再インストールします

0
longilong

不自由なことですが、コンピューターを再起動することが唯一の解決策でした。 LLDBからGDBに切り替えて、シミュレーターの内容をリセットし、Xcodeを再起動してみました。唯一機能したのは、コンピューターの再起動、Xcodeの再起動、アプリの再実行です。

0
Jeff Grimes

同じ問題がありました。私はそれを機能させるために与えられた答えのいくつかの組み合わせをしました。 :)

メニューバーの[製品]をクリックして、ビルドフォルダーをクリーンアップします。 Altキーを押しながら[ビルドフォルダのクリーン]をクリックします。次に、xcodeとシミュレーターを再起動します。これで動作するはずです。そうでない場合は、バンドル識別子とシミュレータの「コンテンツリセット」を変更してから、Xcodeとシミュレータを再起動してください。

0
user865155

今日も同じ問題がありました。私はXcode 4.6.3を使用していました。プロジェクトを閉じてXcode 5で開きましたが、完璧に動作しています。

奇妙だが真実

0
Mohit

私はこれが古いことを知っています-しかし、私にとっての解決策は次のとおりでした:

Goto:ターゲット>ビルド設定>リンク-> Mach-Oタイプ=実行可能

0
TejAces

Cocoapodsを使用している場合は、Podfileにuse_frameworks!を含めることで、動的なフレームワークを構築していることを確認してください。

Cocoapodsの依存関係の静的ライブラリをXcode 10.2.1およびCocoapods 1.6.1に構築していたとき、この「アタッチできませんでした」というエラーのため、ターゲットをデバッグできませんでした。 use_frameworks!を使用すると、エラーはなくなり、再度デバッグできました。


詳細

Podfileで、SwiftとObjective-Cベースのポッドが混在する静的なフレームワークを作成しました。これはデフォルトです。ポッドの1つで:modular_headers => trueを使用しました。私のPodfileは次のようになりました:

Swift_version = '5.0'

target 'TargetName' do
  platform :ios, '12.2'

  pod 'IGListKit', :modular_headers => true
  pod 'PromiseKit/CorePromise', '~> 6.0'
end

上記のPodfileはXcode 10.2.1でデバッグできず、常に「PIDに接続できませんでした」モーダルになりました。

しかし、use_frameworks!を追加すると、うまくいきました!ありとなしで再現できました。動作したPodfileは次のとおりです。

Swift_version = '5.0'
use_frameworks!

target 'TargetName' do
  platform :ios, '12.2'

  pod 'IGListKit'
  pod 'PromiseKit/CorePromise', '~> 6.0'
end
0
yood

私は同じ問題を抱えていました、私の場合、問題は:-

「Build active architectures:NO」を設定しました。それをYESに変更するだけで機能しました。

0
Ashish

次のステップを試してください:

  • Product/Scheme/Edit Schemeに移動してから、Runセクションを選択します。
  • Info Tanを選択し、Debugger Noneを設定します。
  • プロジェクトを実行します。動作している必要があります(デバッガなし)
  • スキームの編集に戻り、デバッガーLLDBを選択します
  • プロジェクトを実行します。動いています。

さらに、派生データを削除して、Product/Cleanを実行する必要があるかもしれません

0
Philip J. Fry

これに対する多くの回答があり、正しいと思うものが見当たりませんでした。これは認証の問題です。これをターミナルに入力します。

Sudo DevToolsSecurity -enable

0
crewshin

IOSシミュレーターのコンテンツと設定をリセットしてから、command + shift + kキーを押してコードをクリーンアップするだけでコードがクリーンアップされます。

0
Desert Rose