NodeJ를 설치할 수 없습니다 : / usr / bin / env : node : 해당 파일 또는 디렉토리가 없습니다
GruntJ를 사용하기 위해 nodebuns를 Ubuntu 14.04에 설치하려고합니다.
우분투 에 대해 다른 방법 으로 문제를 읽었 으므로 ( 문제? ) 설치하기 위해 수행 한 작업은 다음과 같습니다.
sudo apt-get install npm
sudo npm install -g grunt-cli
그 후 grunt를 입력하면 오류가 발생합니다.
/usr/bin/env: node: No such file or directory
그래서 시도했습니다.
curl -sL https://deb.nodesource.com/setup | sudo bash -
sudo apt-get install -y nodejs
sudo apt-get update
그리고 다시 시도하고 여전히 오류가 발생하여 시도했습니다.
sudo add-apt-repository https://launchpad.net/~chris-lea/+archive/node.js/
sudo apt-get install -y nodejs
이 메시지가 나타납니다.
nodejs is already the newest version.
0 to upgrade, 0 to newly install, 0 to remove and 3 not to upgrade.
나는 경우를 대비하여 정리를 시도했다.
sudo apt-get autoremove
그러나 아니, 오류는 여전히 존재합니다 : grunt를 입력해도 여전히 얻을 수 있습니다. /usr/bin/env: node: No such file or directory
어떻게해야합니까?
답을 찾았습니다. 누군가를 도울 수 있도록 여기에 게시하십시오.
심볼릭 링크를 사용하면 문제가 해결됩니다 : ln -s /usr/bin/nodejs /usr/bin/node
(내 감사와 bodokaiser에 +1 투표 ).
참고 :이 게시물은 다소 브라우저 화 된 질문이므로 정확한 게시물이 아닙니다.
노드 버전에 문제가 없습니다. 대신 우분투에서 NodeJS가 기본적으로 설치되는 방식입니다. 우분투에서 노드 응용 프로그램을 실행할 때 nodejs somethign.js
대신에 실행해야합니다node something.js
그래서 터미널에서 호출 응용 프로그램 이름입니다 nodejs
하지 node
. 로받은 단순히 앞으로 모든 명령에 대한 심볼릭 링크에 대한 필요가 이유입니다 node
에가 nodejs
.
ln -s /usr/bin/nodejs /usr/bin/node
최신 노드 버전을 업그레이드해야한다고 생각합니다
sudo npm cache clean -f
sudo npm install -g n
sudo n stable
nodejs 명령을 사용하여 우분투 터미널에서 노드에 액세스 할 수 있다면이 문제는-를 사용하여 nodejs 및 노드의 심볼릭 링크를 작성하여 간단히 해결할 수 있습니다
ln -s /usr/bin/nodejs /usr/bin/node
이 문제를 해결할 수 있습니다
필자의 경우 nodejs-legacy를 설치 하면 문제가 해결되었습니다.
sudo apt-get install nodejs-legacy
그냥 해
$ sudo apt-get install nodejs-legacy
그리고 그것은 작동하기 시작할 것입니다.
패키지 관리자에서 설치하는 경우 bin이 nodejs라고 할 수 있으므로 심볼릭 링크 만하면됩니다.
ln -s /usr/bin/nodejs /usr/bin/node
nodejs가 이미 설치되어 which nodejs
있고 (로 확인 ) 다른 패키지를 설치하지 않으려는 경우 루트로 할 수 있습니다.
update-alternatives --install /usr/bin/node node /usr/bin/nodejs 99
gulp를 사용할 때이 오류가 발생했습니다.
~$ gulp
/ usr / bin / env : 'node': 해당 파일 또는 디렉토리가 없습니다.
이것은 / usr / bin 디렉토리에 모든 권한이 있음을 명심해야하는 다음 명령을 실행하여 제거되었습니다.
~$ ln -s /usr/bin/nodejs /usr/bin/node
이것은 나를 위해 작동합니다 ..
ln -s
가장 쉬운 해결 방법 이지만 설명은 다음과 같습니다.
다른 패키지와 충돌하기 때문에 Ubuntu 저장소의 실행 파일을 node 대신 nodejs라고합니다. 소프트웨어를 실행할 때이 점을 명심하십시오.
이 조언은 설치할 때 나타납니다 sudo apt-get install nodejs
.
따라서 다른 알려진 도구 (어떻게하는지 모르겠습니다. 우분투 리포지토리로 알려져 있지만 기본적으로 16.04에 설치되어 있지 않음)는 해당 네임 스페이스를 차지합니다.
우분투가 패키지를 다른 방법으로 수작업으로하지 않으면 서 이것을 '깨끗하게'고치는 방법에 대한 조언을 제공했다면 좋았을 것입니다. (충돌이 발생하면 충돌이 계속 발생합니다.
이에 대한 두 가지 해결책이 있습니다.
a) "/ usr / local / bin"을 포함하도록 PATH 변수를 설정하십시오.
export PATH="$PATH:/usr/local/bin"
b) 이미 PATH에있는 "/ usr / bin"에 대한 심볼릭 링크를 만듭니다
ln -s /usr/bin/nodejs /usr/bin/node
도움이 되길 바랍니다.
노드 설치 방법에 따라 대부분의 경우 / usr / bin /에 있지 않을 수도 있습니다. 제 경우에는 nvm을 사용하여 설치했기 때문에 노드가 ./nvm/versions에있었습니다.
이 명령을 사용 which node
하여 경로를 찾았지만 작업을 쉽게하기 위해이 명령을 실행할 수 있습니다.
nodepath=$(which node); sudo ln -s $nodepath /usr/bin/node
위의 명령은 노드의 위치를 가져 와서 링크를 만듭니다.
sudo PATH="$PATH:/usr/local/bin" npm install -g <package-name>
내 경우 링크를 들어 않았다 NOT 작업을 다음과 같이
ln -s / usr / bin / nodejs / usr / bin / node
그러나 / usr / local / bin / lessc를 루트로 열고 첫 번째 줄을 node에서 nodejs로 변경할 수 있습니다.
-#! / usr / bin / env 노드
+ #! / usr / bin / env nodejs
ln -s /usr/bin/nodejs /usr/bin/node
이 명령으로 명령 또는 파일 이름 을 바꾸십시오.
나를 위해 받아 들여진 대답은 아직 효과가 없었습니다. 여기에 제안 된대로 시작했습니다.
ln -s /usr/bin/nodejs /usr/bin/node
이 작업을 수행 한 후 다음 오류가 발생했습니다.
/usr/local/lib/node_modules/npm/bin/npm-cli.js:85 let notifier = require ( 'update-notifier') ({pkg}) ^^^
구문 오류 : Object의 Module._compile (module.js : 374 : 25)에서 exports.runInThisContext (vm.js : 53 : 16)의 엄격 모드 외부에서 블록 범위 선언 (let, const, function, class)이 아직 지원되지 않습니다. Function.Module.runMain의 Module.load (module.js : 344 : 32)의 Function.Module._load (module.js : 301 : 12)의 Module._extensions..js (module.js : 417 : 10) ( module.js : 442 : 10) 시작시 (node.js : 136 : 18) node.js : 966 : 3에서
해결책은 https://nodejs.org/en/download/ 에서 최신 버전의 노드를 다운로드하는 것 입니다.
그런 다음 :
sudo tar -xf node-v10.15.0-linux-x64.tar.xz --directory /usr/local --strip-components 1
이제 업데이트가 성공적으로 완료되었습니다. npm -v
3.2.1에서 6.4.1로 변경 되었습니다.
다음 명령을 따라 문제를 해결하십시오.
터미널에서 :
전체 NPM 캐시를 정리하십시오.
$ sudo npm cache clean -f
sudo npm install -g n
최신 안정 버전의 Node.js를 설치하십시오.
sudo n stable
이제 최신 버전의 Node.js가 설치되었습니다. 다음을 사용하여 버전을 확인하십시오.
node -v
'development' 카테고리의 다른 글
WebForms UnobtrusiveValidationMode에는 'jquery'에 대한 ScriptResourceMapping이 필요합니다. (0) | 2020.03.17 |
---|---|
Node.js (자바 스크립트)에서 어떻게 기다릴 수 있습니까? (0) | 2020.03.17 |
2 차원 배열을 어떻게 회전합니까? (0) | 2020.03.17 |
JPA hashCode () / equals () 딜레마 (0) | 2020.03.17 |
Node.js / Express.js-app.router는 어떻게 작동합니까? (0) | 2020.03.17 |