리액트 네이티브 개발에서 사용하는 명령

  • npm i

package.json 파일에 명시된 패키지를 node_modules 디렉터리에 설치

설치한 패키지는 android나 ios 디렉터리의 네이티브 모듈에서 동작하는 파일을 가진다.

  • npm pod-install

objc와 같은 c계열 언어는 원격 저장소에서 패키지를 내려받아 설치하는 기능이 없다.

따라서 pod 프로그램을 통해 패키지를 설치해야하므로 사용

  • npm start

npm run android, npm run ios 명령은 네이티브 부분 앱을 빌드하여 에뮬레이터에 설치하고 자동으로 실행한다.

에뮬레이터에 설치된 앱은 처음 실행될 때 메트로 서버에서 ES5자바스크립트 코드를 내려받는다.

그러므로 위의 명령을 실행하기 전에 npm start로 메트로 서버를 실행한다.

npm 과 npx

npm : Package Manager (관리)

npx : Package Runner (실행)

 

npx는 npm의 5.2.0 버전부터 새로 추가된 도구. 따라서 npm과 비교대상이 아닌 npm을 좀 더 편하게 사용하기 위해서 npm에서 제공해주는 하나의 도구.

 

등장 배경

 

npm 패키지 설치할 때 두가지 케이스가 있다.

  1. 전역으로 패키지를 설치하여 의존성 라이브러리들을 전체적으로 관리하는 방법
  2. 특정 프로젝트에만 의존성 라이브러리를 설치하는 방법

npx를 언제 사용할까?

  • npm run-script를 사용하지 않고 로컬에 설치된 패키지를 사용할 경우
  • 일회성 명령으로 패키지를 실행할 경우 -> 로컬에 설치된 패키지가 없다면 install및 호출을 한번에 해준다.
  • gist_based scripts를 실행할 경우 -> gist라는 곳에 스크립트를 올리고 npx {gist url}로 쉽게 코드 실행이가능하다.
  • 특정 노드 버전의 스크립트를 실행할 경우

npm run ios 빌드오류

React Native- Failed to build IOS project. We ran "xcodebuild" command but it exited with error code 65

위와 같은 오류가 발생했고, 구글링 과정에서 ios/pods/podfile 수정을 통해 해결할 수 있다고 해서 변경했다.

use_flipper ~

post_install do |installer|

flipper_post_install(installer)

end

 

이부분 삭제하고 저장.

 

수정 후

pod deintegrate

pod install

 

여기까지 수행하고 오류 그대로 발생. 그러나 오류코드 하단에

 

nvm is not compatible with the "npm_config_prefix" environment variable: currently set to "opt/homebrew"

Run 'unset npm_config_prefix' to unset it

 

이라는 메세지가 있어서

unset npm_config_prefix

수행 후 빌드 성공했다.

'TIL' 카테고리의 다른 글

JavaScript ES6 문법 정리  (0) 2021.10.17
2021.09.11  (0) 2021.09.11
2021.09.08  (0) 2021.09.08
[TIL] python OpenCV - threshold 함수로 경계선 얻기  (0) 2021.07.26
[TIL] python OpenCV - 1  (1) 2021.07.26

+ Recent posts