MacOS X에 Node.js, nvm 및 npm을 설치하는 권장 방법은 무엇입니까?
저는 가능한 한 홈브루를 사용하려고 노력하고 있습니다.MacOS X에 Node.js 및 npm을 설치하는 권장 방법은 무엇입니까?
용사를 합니다.
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수동으로 설치할 수 있습니다(여기 참조).용사를 합니다.
nvmnode또는iojs할 수 설치할 수 있습니다.)nvm install 0.10 # or nvm install iojs-1.2.0npm과 함께 배송 입니다.node(또는)iojs), 을한 후 할 수node(또는)iojs버전으로 할 수$ npm install -g npm@latestUPD 이전 버전은 입니다.올바른 방법을 알려준 @Metalica에게 감사합니다(아래 설명 참조).
용사를 합니다.
npmionic:npm install -g ionic때어는?
ngCordova사용하여 할 수 .npm또는bower어떤 버전이 당신에게 더 적합한지 모르겠습니다. 고객 측에서 사용하고자 하는 패키지 관리자에 따라 다릅니다.그래서 저는 두 가지를 모두 설명하겠습니다.사용 : 프로젝트 폴더로 이동하여 설치
ng-cordova그 안에서:npm install --save ng-cordova사용: 타워 설치:
npm install -g bower하여 그런다프트폴이설동치다니합여하를 설치합니다.
ngCordova그 안에서:bower install --save ngCordova
PS
- 일부 명령에는 슈퍼 사용자 권한이 필요할 수 있습니다.
- 의 짧은
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
'programing' 카테고리의 다른 글
| 원격 Git 저장소에서 마지막 커밋 제거 (0) | 2023.05.08 |
|---|---|
| 가상 환경을 이동할 수 있습니까? (0) | 2023.05.08 |
| 분기를 헤드로 빠르게 전달하는 방법 (0) | 2023.05.08 |
| Excel VBA를 사용하여 워크북에서 모든 일치 항목 찾기 (0) | 2023.05.08 |
| 파이썬을 컴파일하는 동안 --enable-optimization은 무엇을 합니까? (0) | 2023.05.08 |