2012-06-02 3 views
3

방금 ​​샌드 박스 처리 된 응용 프로그램의 번들 식별자를 변경하고 실행했습니다. main() 실행하기 전에 런타임 예외가 발생합니다. 스택 추적의 맨 위는 runtime_init입니다. Xcode 외부에서 앱을 실행 해 보았고 표준 오류보고 대화 상자가 표시되었습니다. 표시된 정보를 스크롤하면 다음과 같은 메시지가 나타납니다.샌드 박스 응용 프로그램을 처음 실행할 때 충돌이 발생했습니다.

Application Specific Information: 
dyld: launch, running initializers 
/usr/lib/libSystem.B.dylib 
xpchelper reply message validation: sandbox creation failed: 1002 
Container object initialization failed: The operation couldn’t be completed. (Cocoa error 13.) 

다른 시간을 실행하자마자 문제가 없습니다. 컨테이너가 있음을 알 수 있습니다. 그래도 컨테이너를 제거하면 예외가 다시 throw됩니다. 내 사용자가 내 앱을 처음 사용해 본 경험이 크래시되는 것을 원하지 않습니다. 이 문제를 어떻게 해결할 수 있습니까?

아무런 차이가없는 사용 권한 수정을 시도했습니다. 또한 예외가 발생하면 Xcode가 중단 될 때까지 컨테이너가 이미 생성 된 것으로 나타났습니다. 또한 Craig Hockenberry는 blog post에서이 오류를 언급했지만 사용자의 홈 디렉토리에있는 심볼릭 링크를 비난했습니다. 나는 거기에 어떤 심볼릭 링크도 없다. (적어도 그가 최상위 수준이 아니라는 것을 의미한다.)

추가 입력 on Twitter은 심볼 링크 어디서나 일 수 있음을 제안합니다.이 경우에는 분명히 일부 항목이 있습니다. 누구든지 해결 방법을 발견 했습니까? 예외 전에 응용 프로그램 코드가 실행되지 않기 때문에 힘들 것이라고 생각합니다. 희망을 갖고 Mountain Lion이 그것을 고칠 것입니다 ...?

답변

1

마지막으로 Desktop, Documents, Downloads, Movies 및 Pictures 사용자 디렉토리에서 모든 것을 제거하여이 충돌을 해결했습니다. 다른 스레드에서 언급 된 sym 링크 문제와 관련 있다고 가정합니다.

+0

제 질문에서 언급했듯이 그게 문제의 원인입니다. 내가 찾고있는 것은 내 사용자가 자신의 홈 폴더에서 심볼릭 링크를 수동으로 지우지 않아도되는 솔루션입니다. – Dov

+0

누락 된 파일을 확인한 다음 온라인 지원 기사를 확인하거나 지원 담당자에게 문의하도록 사용자에게 요청합니다. 이 온라인 기사에서는 적절한 컨테이너 디렉토리를 찾고 필요한 디렉토리와 파일을 생성/이동하는 방법에 대해 설명합니다. 덜 이상적이지만 지금까지 작동합니다. – greg

관련 문제