[node.js] nvm은 새 터미널 세션에서 “잊어 버린”노드를 유지합니다

OS X에서 새 터미널 세션을 사용 nvm하면 노드 버전을 잊어 버리고 기본값은 아무것도 없습니다.

$ nvm ls:

         .nvm
     v0.11.12
     v0.11.13

nvm use v.0.11.13모든 세션에서 계속 타격 을 가해 야합니다.

         .nvm
     v0.11.12
->   v0.11.13

brew공식 설치 스크립트뿐만 아니라 설치를 모두 시도했습니다 .

.profile추출 버전에 대한 내 :

#nvm
export NVM_DIR=~/.nvm
source $(brew --prefix nvm)/nvm.sh

그리고 install.sh 스크립트의 경우 :

$ curl https://raw.githubusercontent.com/creationix/nvm/v0.10.0/install.sh | bash

#nvm
export NVM_DIR="/Users/farhad/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && . "$NVM_DIR/nvm.sh"  # This loads nvm

내가 잘못하고있는 것에 대한 단서가 있습니까?



답변

시도하십시오 nvm alias default. 예를 들면 다음과 같습니다.

$ nvm alias default 0.12.7

쉘에서 기본 노드 버전을 설정합니다. 그런 다음 쉘 창을 닫고 새 창을 열어 변경 사항이 지속되는지 확인한 후 다음을 수행하십시오.
node --version


답변

에 별칭 node자체는 나중에 노드 버전 업데이트와 함께 기본 별칭을 업데이트 방지 할 수 있습니다.

nvm alias default node


답변

최신 안정 버전을 설치하려면

nvm install stable

특정 버전이 아닌 안정적인 버전으로 기본값을 설정하려면

nvm alias default stable

설치된 버전을 나열하려면 다음을 수행하십시오.

nvm list

현재 v6.2.0다음과 같이 보입니다.

$ nvm list
         v4.4.2
->       v6.2.0
default -> stable (-> v6.2.0)
node -> stable (-> v6.2.0) (default)
stable -> 6.2 (-> v6.2.0) (default)
iojs -> N/A (default)


답변

제 경우에는 다른 프로그램이 PATH변경 사항을 추가 했습니다.bashrc

다른 프로그램이 nvm을 초기화 PATH 한 후 변경 한 경우 nvm의 PATH변경 사항을 잊어 버렸으며 시스템 노드를 노드에 PATH갖습니다 (또는 노드 없음).

이 솔루션은에 NVM 설정을 이동하는 것이었다 하단.bashrc

### BAD .bashrc ###

# NVM initialisation
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm

# Some other program adding to the PATH:
export PATH="$ANT_ROOT:$PATH"

해결책:

### GOOD .bashrc ###

# Some other program adding to the PATH:
export PATH="$ANT_ROOT:$PATH"

# NVM initialisation
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm

(이것은 CentOS의 bash 4.2.46에서 발생했습니다. bash의 버그처럼 보이지만 잘못 생각할 수 있습니다.)


답변

nvm은 PATH 변수를 변경하여 작업을 수행하므로 nvm.sh 스크립트를 소싱 한 후 PATH를 다른 것으로 변경하지 않아야합니다.

필자의 경우 nvm.sh가 .bashrc에서 호출되었지만 PATH 변수가 .bash_profile에서 업데이트되어 세션이 nvm 노드 이전의 시스템 노드를 찾았습니다.


답변

최고 등급의 솔루션은 저에게 효과적이지 않은 것 같습니다. 내 솔루션은 다음과 같습니다.

  1. homebrew를 사용하여 nvm을 완전히 제거하십시오.brew uninstall nvm
  2. 다시 설치 brew install nvm
  3. 터미널에서 아래 단계를 따르십시오 (homebrew를 통해 nvm을 설치할 때도 나열 됨).

    mkdir ~ / .nvm cp $ (brew –prefix nvm) / nvm-exec ~ / .nvm / export NVM_DIR = ~ / .nvm source $ (brew –prefix nvm) /nvm.sh

위에서 설명한 단계는 NVM의 작업 디렉토리를 $ HOME 경로에 추가하고, nvm-exec를 NVM의 작업 디렉토리에 복사 한 다음 $ HOME / .bashrc, $ HOME / .zshrc 또는 쉘의 동등한 구성 파일에 추가합니다. homebrew를 사용하여 NVM 설치에 나열 됨)


답변

여전히 모든 것을 시도했지만 운이 없다면 : _

1-> NVM 제거

rm -rf ~/.nvm

2-> 이것을 따라 npm 종속성을 제거하십시오.

3-> NVM 설치

curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

4-> ~/.bash_profile구성 설정

운영 sudo nano ~/.bash_profile

다음에 복사하여 붙여 넣기

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion

5-> CONTROL + X변경 사항 저장

6-> 달리기 . ~/.bash_profile

7-> 이제 nvm시스템에 설치되어 있어야합니다. 노드를 설치하려면 nvm install v7.8.0기본 노드 버전이되거나 모든 버전의 노드를 설치할 수 있습니다