programing

MacOS X에 Node.js, nvm 및 npm을 설치하는 권장 방법은 무엇입니까?

minimums 2023. 5. 8. 22:00
반응형

MacOS X에 Node.js, nvm 및 npm을 설치하는 권장 방법은 무엇입니까?

저는 가능한 한 홈브루를 사용하려고 노력하고 있습니다.MacOS X에 Node.jsnpm설치하는 권장 방법은 무엇입니까?

  1. 용사를 합니다.homebrewnvm:

    brew update
    brew install nvm
    source $(brew --prefix nvm)/nvm.sh
    

    를 막지명에니다에 합니다..profile,.bashrc또는.zshrc모든 터미널 시작 시 다시 실행하지 않는 파일입니다., 그을에는하가것래▁the것▁it▁so▁add..profile선택사항:

    echo "source $(brew --prefix nvm)/nvm.sh" >> ~/.profile
    

    하는 데 가 있는 nvm용사를 brew수동으로 설치할 수 있습니다(여기 참조).

  2. 용사를 합니다.nvmnode또는iojs할 수 설치할 수 있습니다.)

    nvm install 0.10
    # or
    nvm install iojs-1.2.0
    
  3. npm과 함께 배송 입니다.node(또는)iojs), 을한 후 할 수 node(또는)iojs 버전으로 할 수

    $ npm install -g npm@latest
    

    UPD 이전 버전은 입니다.올바른 방법을 알려준 @Metalica에게 감사합니다(아래 설명 참조).

  4. 용사를 합니다.npmionic:

    npm install -g ionic
    
  5. 때어는?ngCordova 사용하여 할 수 .npm또는bower어떤 버전이 당신에게 더 적합한지 모르겠습니다. 고객 측에서 사용하고자 하는 패키지 관리자에 따라 다릅니다.그래서 저는 두 가지를 모두 설명하겠습니다.

    1. 사용 : 프로젝트 폴더로 이동하여 설치ng-cordova그 안에서:

      npm install --save ng-cordova
      
    2. 사용: 타워 설치:

       npm install -g bower
      

      하여 그런다프트폴이설동치다니합여하를 설치합니다.ngCordova그 안에서:

       bower install --save ngCordova
      

PS

  1. 일부 명령에는 슈퍼 사용자 권한이 필요할 수 있습니다.
  2. 의 짧은 npm install some_module이라npm i some_module

사용하다nvmHomebrew는 Node.js입니다.

은 다음과 같습니다.nvm홈브루를 사용하는 것입니다.

이러지마세요.

nvmGithub Readme은 분명히 말합니다.

홈브루 설치는 지원되지 않습니다. 설치에 ㅠㅠㅠㅠㅠㅠㅠnvm,부탁합니다.brew uninstall문제를 제기하기 전에 아래 지침에 따라 설치합니다.

대신 다음 방법을 사용합니다.

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

를 이립트는 nvm 복합니로 합니다.~/.nvm프로필에 합니다.~/.bash_profile,~/.zshrc,~/.profile또는~/.bashrc).

그런 다음 사용합니다.nvm노드를 설치합니다.예를 들어 최신 LTS 버전을 설치하려면 다음을 수행합니다.

nvm install 16

깔끔하고 번거롭지 않습니다.기본 Node.js 버전으로도 설정되므로 모든 설정이 완료되어야 합니다.

n(노드 버전 관리)을 사용하고 있습니다.

두 가지 방법으로 설치할 수 있습니다.

brew install n

또는

npm install -g n

다른 버전의 노드와 io 간에 전환할 수 있습니다.다음은 현재 환경에서 param 없이 n을 호출할 때의 예입니다.

$ n

  io/3.3.1
  node/0.12.7
  node/4.0.0
  node/5.0.0
ο node/5.10.1 

나는 이것에 매우 늦었지만 나는 다른 대답들이 마음에 들지 않았습니다.

홈브루 설치 중

브루 런용

"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

노드 및 npm 설치 중

사용하면 안 됩니다.brew노드 및 npm설치합니다.

홈브루를 사용하여 노드를 설치해야 한다고 제안한 곳을 몇 군데 보았습니다(예: 알렉스팟 답변 및 이 Team Treehouse 블로그 게시물). 그러나 이러한 방식으로 설치하면 다음과 같은 문제에 더 쉽게 직면할 수 있습니다.npm그리고.brew 다 패키지 관리자이며 패키지 관리자가 다른 패키지 관리자를 관리하도록 해야 합니다. 예를 들어 이 버그는 공식 npm 문제로 이어집니다. 오류: 삭제 거부: /usr/local/bin/npm 또는 OSX에서 npm 모듈을 제거할 수 없습니다.

Dan Herbert의 포스트 Npm On Mac OS X for Homebrew Users에서 이 주제에 대한 자세한 내용을 읽을 수 있습니다.

또한 npm의 Homebrew 설치를 사용하려면 글로벌 패키지를 설치할 때 sudo를 사용해야 합니다.홈브루의 핵심 아이디어 중 하나는 앱이 루트 액세스 권한을 부여하지 않고 설치될 수 있다는 것이기 때문에, 이것은 나쁜 생각입니다.

다른 모든 것을 위해

저는 npm을 사용하고 싶습니다. 하지만 웹 사이트의 지침에 따라 각 모듈에 대한 설치 지침을 따라야 합니다. 그들은 그들이 가지고 있는 문제나 버그를 누구보다 더 잘 알 수 있기 때문입니다.

이전에 brew를 사용하여 노드를 설치한 경우 노드를 "적절한 방법"으로 설치하기 전에 정리해야 하는 추가 파일이 많이 있습니다.또한 원활한 작업을 위해 시작 스크립트에 몇 가지 설정을 추가해야 했습니다.

저는 이것을 쉽게 하기 위해 대본을 썼습니다.

# filename:  install-nvm-npm-node
# author:    Lex Sheehan
# purpose:   To cleanly install NVM, NODE and NPM
# dependencies:  brew

NOW=$(date +%x\ %H:%M:%S)
CR=$'\n'
REV=$(tput rev)
OFF=$(tput sgr0)
BACKUP_DIR=$HOME/backups/nvm-npm-bower-caches/$NOW
MY_NAME=$(basename $0)
NODE_VER_TO_INSTALL=$1
if [ "$NODE_VER_TO_INSTALL" == "" ]; then
    NODE_VER_TO_INSTALL=v0.12.2
fi
if [ "`echo "$NODE_VER_TO_INSTALL" | cut -c1-1`" != "v" ]; then
    echo """$CR""Usage:   $ $MY_NAME <NODE_VERSION_TO_INSALL>"
    echo "Example: $ $MY_NAME v0.12.1"
    echo "Example: $ $MY_NAME $CR"
    exit 1
fi
echo """$CR""First, run:  $ brew update"
echo "Likely, you'll need to do what it suggests."
echo "Likely, you'll need to run: $ brew update$CR"
echo "To install latest node version, run the following command to get the latest version:  $ nvm ls-remote"
echo "... and pass the version number you want as the only param to $MY_NAME. $CR"
echo "Are you ready to install the latest version of nvm and npm and node version $NODE_VER_TO_INSTALL ?$CR"
echo "Press CTL+C to exit --or-- Enter to continue..."
read x

echo """$REV""Uninstalling nvm...$CR$OFF"
# Making backups, but in all likelyhood you'll just reinstall them (and won't need these backups)
if [ ! -d "$BACKUP_DIR" ]; then 
    echo "Creating directory to store $HOME/.nvm .npm and .bower cache backups: $BACKUP_DIR"
    mkdir -p $BACKUP_DIR
fi 
set -x
mv $HOME/.nvm   $BACKUP_DIR  2>/dev/null
mv $HOME/.npm   $BACKUP_DIR  2>/dev/null
mv $HOME/.bower $BACKUP_DIR  2>/dev/null
{ set +x; } &>/dev/null

echo "$REV""$CR""Uninstalling node...$CR$OFF"
echo "Enter your password to remove user some node-related /usr/local directories"
set -x
sudo rm -rf /usr/local/lib/node_modules
rm -rf /usr/local/lib/node
rm -rf /usr/local/include/node
rm -rf /usr/local/include/node_modules
rm /usr/local/bin/npm
rm /usr/local/lib/dtrace/node.d
rm -rf $HOME/.node
rm -rf $HOME/.node-gyp
rm /opt/local/bin/node
rm /opt/local/include/node
rm -rf /opt/local/lib/node_modules
rm -rf /usr/local/Cellar/nvm
brew uninstall node 2>/dev/null
{ set +x; } &>/dev/null

echo "$REV""$CR""Installing nvm...$CR$OFF"

echo "++brew install nvm"
brew install nvm 
echo '$(brew --prefix nvm)/nvm.sh'
source $(brew --prefix nvm)/nvm.sh

echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc):$CR$OFF"
echo "export NVM_DIR=\"\$(brew --prefix nvm)\"; [ -s \"\$NVM_DIR/nvm.sh\" ] && . \"\$NVM_DIR/nvm.sh\"$CR"
NVM_DIR="$(brew --prefix nvm)"

echo """$CR""Using nvm install node...$CR"
echo "++ nvm install $NODE_VER_TO_INSTALL"
nvm install $NODE_VER_TO_INSTALL
NODE_BINARY_PATH="`find /usr/local/Cellar/nvm -name node -type d|head -n 1`/$NODE_VER_TO_INSTALL/bin"
echo "$REV""$CR""Insert the following line in your startup script (ex: $HOME/.bashrc) and then restart your shell:$CR$OFF"
echo "export PATH=\$PATH:$NODE_BINARY_PATH:$HOME/.node/bin"

echo """$CR""Upgrading npm...$CR"
echo '++ install -g npm@latest'
npm install -g npm@latest
{ set +x; } &>/dev/null
echo "$REV""$CR""Insert following line in your $HOME/.npmrc file:$OFF"
echo """$CR""prefix=$HOME/.node$CR"
echo "Now, all is likley well if you can run the following without errors:  npm install -g grunt-cli$CR"
echo "Other recommended global installs: bower, gulp, yo, node-inspector$CR"

저는 왜 이것이 "올바른 방법"인지 자세히 설명하는 짧은 기사를 여기에 썼습니다.

iojs를 설치해야 하는 경우 다음과 같이 nvm을 사용하여 설치합니다.

nvm install iojs-v1.7.1

양조장을 설치하려면 홈 페이지를 참조하십시오.

나머지는 알렉스팟의 답변을 참조하십시오.

글로벌 패키지를 설치할 때 superuser 권한을 제공할 필요가 없으므로 node.js를 nvm과 함께 설치해야 합니다('sudo' 앞에 추가하지 않고 "npm install -g package name"만 실행할 수 있음).

하지만 브루는 다른 것들에 환상적입니다.저는 바우어와 함께 무언가를 설치할 수 있는 옵션이 있을 때마다 바우어에게 치우치는 경향이 있습니다.

제가 하는 일은 다음과 같습니다.

curl https://raw.githubusercontent.com/creationix/nvm/v0.20.0/install.sh | bash
cd / && . ~/.nvm/nvm.sh && nvm install 0.10.35
. ~/.nvm/nvm.sh && nvm alias default 0.10.35

이것은 홈브루가 없습니다.

nvm곧 io.js를 지원할 예정이지만 게시 시점에는 지원하지 않습니다. https://github.com/creationix/nvm/issues/590

그런 다음 프로젝트별로 다른 모든 것을 설치합니다.package.json그리고.npm install.

noa에 동의합니다. 여러 버전이 필요한 경우node,io.js양조는 적절한 해결책이 아닙니다.

베타 테스트를 도와드릴 수 있습니다.io.jsnvm에서 지원: https://github.com/creationix/nvm/pull/616

네가 원한다면,io.js 있는 에는 이항 분포를 설치할 수 .io.jshttps://iojs.org/dist/v1.0.2/iojs-v1.0.2-darwin-x64.tar.gz 에서; 다음을 포함합니다.npm그리고 당신은 필요하지 않을 것입니다.nvm버전을 전환하지 않는 경우.

업트해야함 업데이트하는 것을 하세요.npm후: 설치후:sudo npm install -g npm@latest

zsh 및 Homebrew와 함께 설치하는 경우:

brew install nvm  <=== This is not recommended by NVM. They want to run their shell script instead

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

그런 다음 ~/.zshrc 또는 원하는 셸 구성 파일에 다음을 추가합니다.

export NVM_DIR="$HOME/.nvm"
. "/usr/local/opt/nvm/nvm.sh"

그런 다음 노드 버전을 설치하고 사용합니다.

nvm install 7.10.1
nvm use 7.10.1

2021년 업데이트

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

MAC 문제 해결:

macOS 10.15 이후 기본 셸은 zsh이고 nvm은 업데이트할 .zshrc를 찾지만 기본적으로 설치되지 않습니다.~/.zshrc 터치로 생성한 후 설치 스크립트를 다시 실행합니다.

이전 기본 셸인 bash를 사용하는 경우 touch ~/.bash_profile을 실행하여 필요한 프로파일 파일이 없는 경우 생성합니다.

터미널 인스턴스를 다시 시작하거나 . ~/.nvm/nvm.sh 을 실행해야 할 수 있습니다.터미널을 다시 시작하거나 새 탭/창을 열거나 source 명령을 실행하면 명령과 새 구성이 로드됩니다.

이전에 bash를 사용했지만 zsh가 설치되어 있습니다.이러한 줄을 ~/.zshrc에 수동으로 추가하고 ~/.zshrc를 실행해야 합니다.

언급URL : https://stackoverflow.com/questions/28017374/what-is-the-recommended-way-to-install-node-js-nvm-and-npm-on-macos-x

반응형