ERROR: Node.js version 16.15.1 is no longer supported.
-
답글: ERROR: Node.js v10.16.3 is no longer supported
react native(0.68.2) 아래 링크와 같은 오류로 인해
(오류링크 : https://stackoverflow.com/questions/69192815/metro-builder-syntaxerror-unexpected-token-after-upgrading-to-react-native-0)node 버전을 v10.16.3(기본)에서 16.15.1(LTS)로 업그레이드하고 npm 버전도 6.11.3(기본)에서 8.11.0로 업그레이드 하였더니
expo start 시 아래와 같은 에러가 발생합니다.
ERROR: Node.js version 16.15.1 is no longer supported.
expo-cli supports following Node.js versions:-
=10.13.0 <11.0.0 (Active LTS)
-
=12.0.0 <13.0.0 (Active LTS)
-
=13.0.0 <14.0.0 (Current Release)
node.js의 버전과 expo-cli의 버전이 맞지 않는 것 같은데 해당 글을 보다가 '초기에 설치된 expo-cli의 버전을 사용하지 않으면 실행되지 않을 수 있다'고 하신 점 때문에 문의드립니다.
npm install -g expo-cli 를 해서 버전 호환을 시켜도 문제없나요?
-
-
@조송아
질문 주신 부분은 실행하는 데에는 문제가 없을 것 같습니다.
npm run web
명령어로 실행을 하면, 아래와 같은 로그를 볼 수 있습니다.해당 로그에서 19006이 포트 번호이며, 이 포트 번호로 실행URL과 포트를 등록해야 합니다.
실행 URL과 포트는 상단 메뉴바의
프로젝트 > 실행 URL
과 포트 에서 확인 가능합니다.도메인과 포트 등록 후, 해당 URL로 들어가보면 실행된 모습을 확인하실 수 있습니다.
공유링크는 재생성하여 들어가지 못하도록 처리해주세요^^
감사합니다.
-
@Wynter
공유링크 입니다.
https://goor.me/u7n2K위에서 아래 링크를 참고하여 expo install react-native-webview 후 App.js 수정했다고 했는데,
(참고링크 : https://tyrannocoding.tistory.com/58)
node.js로 만든 서버를 8080포트에서 열도록 하고 해당 서버와 웹앱을 헤로쿠로 배포한 뒤 헤로쿠 주소를 App.js에서 사용한 것 외에는 따로 지정한 것이 없습니다. 이게 문제가 될까요? -
@Wynter
위에서 아래 링크를 참고하여 expo install react-native-webview 후 App.js 수정했다고 했는데,
(참고링크 : https://tyrannocoding.tistory.com/58)
node.js로 만든 서버를 8080포트에서 열도록 하고 해당 서버와 웹앱을 헤로쿠로 배포한 뒤 헤로쿠 주소를 App.js에서 사용한 것 외에는 따로 지정한 것이 없습니다. 이게 문제가 될까요?말씀하신 공유 링크는 어디서 가져와야 하나요?
-
@조송아
안녕하세요.
올려주신 이미지에는 19002 포트를 사용중이라고 하는 것 같습니다.
혹시 도메인+포트 설정도 따로 하셨을까요?
공유 링크 주시면 에러 관련 부분을 들어가서 확인해보도록 하겠습니다.
감사합니다.
-
@Wynter
두번째로 알려주신 코드를 터미널에 입력 후 다시 실행해도 동일한 오류가 발생하고
netstat -ntlp를 하면 아래처럼 뜨는데 19002 포트를 찾을 수 없습니다.
앞서 알려주신 ReactNative 스택 관련 버전업하는 방법을 적은 포럼 게시글을 실행하기 전과 후 모두 실행버튼을 누르면 해당 하얀줄은 계속 발생했는데 여기서 expo devtools is running at http://localhost:19002가 영향이 있나요?.. 만약 있다면 어떻게 처리해야 하나요?
<앞서 알려주신 ReactNative 스택 관련 버전업하는 방법을 적은 포럼 게시글을 실행하기 전>
<포럼 게시글을 실행한 후>
-
@Wynter
kill -9 프로세스아이디 로 19002 포트를 사용하는 프로세스를 죽이려고 하였지만
19002포트를 사용하는 프로세스는 없었습니다.. 안나왔어요!kill -9 $(netstat -nlp | grep :19002 | awk -F/ '{print $1}' | awk '{print $7}') 2> /dev/null
를 사용하면 19002 프로세스를 종료하는 건가요? -
kill -9 $(netstat -nlp | grep :19002 | awk -F/ '{print $1}' | awk '{print $7}') 2> /dev/null
위 명령을 터미널에 입력함으로써 바로 프로세스를 종료할 수도 있습니다.
-
@조송아 님이 ERROR: Node.js version 16.15.1 is no longer supported. 에서 보낸 메세지:
listen EADDRINUSE: address already in use :::19002
Error: listen EADDRINUSE: address already in use :::19002해당 에러는 이미 19002 포트에 프로세스가 실행중이어서 뜨는 것으로 보입니다.
netstat -ntlp
를 해서kill -9 프로세스아이디
로 프로세스를 죽여보시고 실행해보심이 어떠실까요~? -
@Wynter
Node.js v12.13.0(LTS)
npm 6.12.0
expo-cli 5.4.9 -
@Wynter
이전 컨테이너는 삭제 후 동일한 이름으로 컨테이너 재생성하여 다시 실행해보았습니다.아래 링크를 참고하여 expo install react-native-webview 후 App.js 수정한 뒤
(참고링크 : https://tyrannocoding.tistory.com/58)원글에서 말씀드린 Metro Builder: SyntaxError: Unexpected token 에러가 발생하여 말씀해주신 포럼 게시글을 참고한 뒤(heroku에서 배포한 주소가 있어서 5번까지만 진행) 실행버튼을 누르면 어느 순간부터 아래와 같은 에러가 발생합니다.
<<발생에러>>
Use port 19002 instead? … yes
Starting project at /workspace/laundry_check
Developer tools running on http://localhost:19002
Starting Metro Bundler
listen EADDRINUSE: address already in use :::19002
Error: listen EADDRINUSE: address already in use :::19002최신 버전의 EXPO CLI와 이전 버전의 EXPO가 프로젝트에 설치된 경우에도 이런 일이 발생한다고 하여 expo-cli를 전역적으로 uninstall했다가 install해도 동일합니다ㅠㅠ 뭐가 문제일까요.
추가로 동일한 작업을 할 때 컨테이너를 같은 이름으로 여러 번 사용하면 속도 저하 등과 같은 문제가 발생하는지도 궁금합니다.
컨테이너 안에서 코드가 꼬이면 작업하던 컨테이너 삭제 후 동일한 이름으로 다시 생성하여 사용한 적이 여러 번인데 속도가 처음보다 느려진거 같아서요. -
안녕하세요.
ReactNative 스택 관련 버전업하는 방법을 적은 포럼 게시글이 있습니다!
문의주신
npm install -g expo-cli
는 문제 없을 것 같다고 생각이 됩니다.감사합니다.