Lỗi khi chạy React Native App từ Terminal (iOS)


394

Tôi đang làm theo hướng dẫn trên trang web React Native chính thức.

Sử dụng như sau để xây dựng dự án của tôi:

react-native run-ios

Tôi nhận được lỗi:

Found Xcode project TestProject.xcodeproj
xcrun: error: unable to find utility "instruments", not a developer   
tool or in PATH

Command failed: xcrun instruments -s
xcrun: error: unable to find utility "instruments", not a developer 
tool or in PATH

Mặc dù, khi tôi chạy ứng dụng từ .xcodeproj, mọi thứ đều hoạt động tốt.

Bất kỳ đề xuất?


stackoverflow.com/questions/60227353/ Từ Có ai có thể giúp tôi trong những lỗi này không
Shaharyar Jafri

Câu trả lời:


952

Kiểm tra liên kết này ( Chạy run-ios run-ios xảy ra lỗi? ). Nó dường như là một vấn đề với vị trí của Command line tools.

Trong Xcode, chọn menu Xcode, sau đó Tùy chọn, rồi tab Vị trí. Chọn phiên bản Xcode của bạn từ danh sách thả xuống và thoát Xcode.

Tab vị trí XCode


@JacobSiegel bạn có thể cung cấp thêm thông tin về tab Vị trí của bạn trong XCode, vui lòng.
leo7r

9
@ leo7r Cảm ơn bạn. Công cụ CL của tôi trống. Tôi đã thay đổi cài đặt thành Xcode 8.0 và điều đó đã giải quyết được vấn đề. Bạn có thể muốn làm nổi bật điều đó trong câu trả lời của bạn. Chúc mừng!
AndrewHenderson

Lựa chọn thả xuống Công cụ dòng lệnh là trống đối với tôi, Chỉ có tùy chọn tôi có khi nhấp là Xcode 9.2, mà tôi đã chọn, các thay đổi đã lưu và các công cụ có sẵn cho phản ứng gốc. cảm ơn!
Joey T

Vì vậy, tôi đã làm điều đó và vì một số lý do cài đặt homebrew đã vô hiệu hóa nó. Tôi đã phải chọn lại từ xcode sau khi cài đặt homebrew.
qwertzguy

1
Vẫn có lỗi ngay cả với CLT được chọn ...: /
Mayoul 30/11/18

139

Bạn có thể cần cài đặt hoặc đặt vị trí của Công cụ dòng lệnh Xcode .

Qua dòng lệnh

Nếu bạn đã tải xuống Xcode, bạn có thể chạy như sau để đặt đường dẫn:

sudo xcode-select -s /Applications/Xcode.app

Nếu các công cụ dòng lệnh chưa được cài đặt, bạn có thể cần chạy nó trước:

xcode-select --install

Bạn có thể cần chấp nhận giấy phép Xcode trước khi cài đặt các công cụ dòng lệnh:

sudo xcodebuild -license accept 

Qua Xcode

Hoặc điều chỉnh Command Line Toolscài đặt qua Xcode ( Xcode > Preferences > Locations):

Tùy chọn Xcode - tab Vị trí


Hoạt động như một lá bùa! <3
Rishav Kumar

15

Theo mặc định, sau khi cài đặt dòng lệnh Xcode không được chọn, vì vậy hãy mở Xcode và đi đến Tùy chọn >> Vị trí và đặt Công cụ dòng lệnh ...

Điều này làm việc cho tôi trong MAC High Sierra , Xcode Phiên bản 9.3 :

Tùy chọn Xcode

Nhấn iđể mở trình giả lập iOS ...

Nhấn a để mở thiết bị hoặc trình giả lập Android hoặc i để mở trình giả lập iOS.

Và bạn có thể thấy một trình giả lập iPhone mới thú vị như hình ảnh dưới đây:

Phản ứng các bản in gốc, Tôi là Alireza Dezfoolian, Nhà phát triển Front End!


2
Câu trả lời tốt nhất, tốt nhất của tốt nhất.
AmerllicA

13

Trong trường hợp của tôi, vấn đề là Xcode chưa được cài đặt.


Bạn có thể vui lòng giải thích lý do cho downvote? Đây là một câu trả lời chính hãng. Tôi đã nhận được cùng một lỗi chính xác.
Heisenberg

trang web chính thức phản ứng nói rõ rằng bạn cần Xcode để phản ứng tự nhiên hoạt động.
JacobSiegel

6
Tôi đã theo một hướng dẫn cho người mới bắt đầu mà giả sử xcode đã được cài đặt và không đề cập đến nó. Lỗi này không nói rằng bạn chưa cài đặt xcode. Vì vậy, tôi sẽ không bao giờ biết.
Heisenberg

11

Tôi đã phải chấp nhận giấy phép XCode sau lần cài đặt đầu tiên trước khi tôi có thể chạy nó. Bạn có thể chạy như sau để nhận được dấu nhắc cấp phép thông qua dòng lệnh. Bạn phải gõ agreevà xác nhận là tốt.

sudo xcodebuild -license

Bạn cũng có thể chấp nhận giấy phép ngay lập tức, nếu bạn muốn: sudo xcodebuild -license accept(nguồn: apple.stackexchange.com/a/213151/89456 )
odlp

7

Vấn đề là phiên bản Xcode của bạn không được đặt trên Công cụ dòng lệnh, để giải quyết vấn đề này, hãy mở Xcode> Menu> ưu tiên> vị trí> ở đây để các công cụ Dòng lệnh chọn phiên bản Xcode của bạn, đó là nó. nhập mô tả hình ảnh ở đây


4

Đối với những người như tôi đến trang này có vấn đề này sau khi cập nhật Xcode nhưng không gặp vấn đề gì với cài đặt vị trí, khởi động lại máy tính của tôi đã thực hiện thủ thuật này.


3

Đối với tôi, hóa ra có một bản cập nhật hệ thống iOS đang chờ xử lý để yêu cầu khởi động lại máy tính. Khởi động lại và để cập nhật kết thúc giải quyết vấn đề của tôi.


1

Trong trường hợp của tôi, biến môi trường SDKROOT đã sai, trong đó đề cập đến một phiên bản cũ của iPhoneOSxx.x.sdk. (Có lẽ điều này sẽ tự động giải quyết sau khi khởi động lại?)

Bạn có thể kiểm tra bằng cách chạy echo $SDKROOTvà xác minh rằng đó là một đường dẫn hợp lệ.

Tôi đã sửa nó bằng cách cập nhật trong .bash_profile:

export SDKROOT=/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS11.2.sdk

1

Không có giải pháp nào trong số này làm việc cho tôi. Hai vấn đề tương tự này cung cấp các giải pháp tạm thời có hiệu quả, có vẻ như quá trình giả lập không được tắt chính xác:

Giết chết quá trình giả lập

Từ https://stackoverflow.com/a/52533391/11279823

  1. Thoát khỏi trình giả lập & Xcode.
  2. Đã mở Activity monitor, chọn cputùy chọn và tìm kiếm sim, giết tất cả quá trình hiển thị như kết quả.
  3. Sau đó phóng lên thiết bị đầu cuối và chạy sudo xcrun simctl erase all. Nó sẽ xóa tất cả nội dung của tất cả các mô phỏng. Theo nội dung nếu bạn đăng nhập vào một nơi nào đó mật khẩu sẽ biến mất, tất cả các ứng dụng dành cho nhà phát triển được cài đặt trong trình giả lập đó sẽ biến mất.

Mở Trình mô phỏng trước khi bắt đầu gói

Từ https://stackoverflow.com/a/55374768/11279823

open -a Simulator; npm start

Hy vọng một giải pháp lâu dài được tìm thấy.


1

1) Chuyển đến Tùy chọn Xcode

2) Xác định vị trí tab vị trí

3) Đặt phán đoán Xcode trong Công cụ dòng lệnh đã cho

Bây giờ, nó sẽ hoạt động thành công.


0

Trong Mac: Sau tất cả, bạn đang gặp phải sự cố này, có thể có khả năng thiếu các mục sau trong Tùy chọn hệ thống -> Mạng -> Ethernet -> Chọn Nâng cao -> Proxy

thêm dòng sau

* .local, localhost


0

Đối với bất kỳ vấn đề như vậy:

  1. Chuyển đến .expothư mục
  2. Tìm thấy apk-cache
  3. Xóa thư mục đó

và bạn đã hoàn thành ..

Hy vọng nó giúp?

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.