리액트 네이티브 개발에서 사용하는 명령
- 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 패키지 설치할 때 두가지 케이스가 있다.
- 전역으로 패키지를 설치하여 의존성 라이브러리들을 전체적으로 관리하는 방법
- 특정 프로젝트에만 의존성 라이브러리를 설치하는 방법
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 |