Gerenciar diferentes versões do Node.js em um ambiente macOS pode ser crucial para o desenvolvimento de múltiplos projetos, cada um com suas próprias dependências de versão. O Node Version Manager (NVM) é uma ferramenta projetada para simplificar esse processo, permitindo a instalação e alternância entre diversas versões do Node.js sem conflitos.
A preocupação comum de que a instalação do NVM possa interferir em uma instalação existente do Node.js é infundada. O NVM opera isolando versões do Node.js através da manipulação da variável de ambiente PATH, sem remover ou modificar instalações preexistentes. Isso garante que suas versões anteriores permaneçam acessíveis e que você possa reverter para elas se necessário.
É importante notar que, após a instalação do NVM, a versão do Node.js previamente instalada pode ser automaticamente definida como um alias padrão, facilitando a transição para os usuários.
Os passos essenciais para utilizar o NVM incluem reiniciar o terminal após a configuração e usar o comando nvm use para alternar entre as versões instaladas. A observação de prompts indicando que node -v pode retornar resultados diferentes é fundamental para novos usuários entenderem o comportamento do NVM.
Embora não seja estritamente necessário remover instalações antigas do Node.js, essa é uma medida preventiva recomendada em certos cenários, especialmente em ambientes com restrições de espaço em disco.
1. Limpeza de Instalações Anteriores (Opcional)
Se você já tentou instalar o Node.js ou o NVM anteriormente, pode ser útil remover quaisquer vestígios:
rm -rf ~/.nvm
# Se você instalou o Node.js manualmente ou via outros gerenciadores,
# pode remover os diretórios correspondentes, como /usr/local/bin/node,
# mas tenha cautela para não remover dados importantes.
2. Download Manual do Código Fonte do NVM
Para um controle mais granular, podemos baixar o script de instalação manualmente:
mkdir -p ~/.nvm
cd ~/.nvm
curl -o install_nvm.sh https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh
Nota: A versão v0.39.7 é um exemplo; verifique a página de releases do NVM para a versão mais recente.
3. Modificação do Script de Instalação (Opcional, para contornar problemas de rede)
Se você encontrar problemas com o download direto do GitHub, pode ser útil redirecionar para um mirror:
sed -i '' 's/https:\/\/github.com\/nvm-sh\/nvm.git/https:\/\/gitee.com\/mirrors\/nvm.git/' install_nvm.sh
# Descomente a linha abaixo se quiser pular a modificação automática do profile (faremos manualmente)
# sed -i '' 's/_profile="\$NVM_PROFILE"/_profile="\/dev\/null"/' install_nvm.sh
4. Execução do Script de Instalação
Execute o script baixado e modificado:
bash install_nvm.sh
5. Configuração Manual das Variáveis de Ambiente
Abra seu arquivo de configuração do shell (.zshrc para Zsh, .bash_profile ou .bashrc para Bash) com um editor de texto:
# Para Zsh
nano ~/.zshrc
# Para Bash
# nano ~/.bash_profile
Adicione as seguintes linhas ao final do arquivo:
# NVM Configuration
export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh" # Carrega o NVM
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion" # Carrega o autocompletar do NVM
Salve e saia do editor (Ctrl+O, Enter, Ctrl+X no nano).
6. Aplicação das Mudanças de Configuração
Para que as novas configurações de ambiente tenham efeito imediato, execute:
source ~/.zshrc # Ou source ~/.bash_profile se estiver usando Bash
7. Verificação da Instalação do NVM
Confirme se o NVM foi instalado corretamente:
nvm --version
Você deverá ver o número da versão do NVM exibido.
Verificando a Funcionalidade Completa do NVM
-
Listar as versões do Node.js instaladas: ```bash
nvm ls
Se nenhum Node.js estiver instalado, o comando indicará isso. Se houver versões, elas serão listadas. -
Instalar e testar uma versão do Node.js: ```bash
nvm install 18 # Instala a versão mais recente do Node.js 18.x node -v # Verifica a versão recém-instalada
Se o comando `node -v` mostrar a versão correta (por exemplo, v18.x.x), o NVM está funcionando como esperado.
Comandos Comuns do NVM
nvm ls: Lista todas as versões do Node.js instaladas.nvm current: Mostra a versão do Node.js em uso atualmente.nvm install <version></version>: Enstala uma versão específica do Node.js (ex:nvm install 16.14.0ounvm install lts/hydrogen).nvm uninstall <version></version>: Desinstala uma versão específica do Node.js.nvm use <version></version>: Alterna para o uso de uma versão específica do Node.js para a sessão atual do terminal.nvm alias default <version></version>: Define uma versão do Node.js como a padrão para novas sessões de terminal.nvm deactivate: Desaitva a versão atual do Node.js.