Releaseスキームでのビルド時に発生したエラー
error: Sandbox: sed(2330) deny(1) file-read-data /Users/***username***/Developer/Xcode Projects/***app name***//***app name***.xcodeproj/project.pbxproj (in target '/***app name***' from project '/***app name***')
Debugスキームで動かしているときは、何のエラーもなく動いていました。
デバッグも終わり、Direct Distribution
で配布するためにReleaseスキームでビルドしたときに、このエラーが出ました。
このエラー、新しいアプリを開発するたびに出るのですが、ついつい対応方法を忘れてしまいます。
Releaseスキームの時、多くの方もやってらっしゃるであろうビルド番号の自動更新
をRunScriptで実現しています。
このエラーが出る原因はこのRunScriptを実行することです。
この実行を許可しなくてはいけなんですね。
対応方法
ビルドオプションのUser Script Sandboxing
をNoに変更します。
Xcodeのあるバージョンから、この設定がデフォルトでYesになり、この対策方法がわからずに苦慮しました。
現在、Noは非推奨です。
こちらのサイトが役立ちました。
こちらのサイトの情報によると、ちゃんとしたスクリプトを記述すれば、このようなエラーは出ないそうです。
Xcode で Run Script 時 Sandbox: ... deny(1) file-read-data 的なエラーが出た時の対処法