Resolva este problema do Node.js – cannot find module XXXXX
Este problema é mais comum quando se usa o NPM com algum módulo global sobre o terminal (linha de comando) – o Tuild por exemplo.
Não sei bem como descrever o erro, mas é um erro mais menos assim:
Error: Cannot find module 'tuild' at Function._resolveFilename (module.js:322:11) .........
Qual é a solução para este problema? É bem mais simples do que você imagina…
O Node.js usa a variável do sistema NODE_PATH para encontrar os módulos no disco. O que acontece, é que o NPM usa um PATH diferente do padrão do Node.js.
Node: NODE_PATH=”/usr/local/lib/node”
NPM: NODE_PATH=”/usr/local/lib/node_modules”
Para solucionar, você só precisar dar um merge nos 2 paths, ficando assim:
NODE_PATH=”/usr/local/lib/node:/usr/local/lib/node_modules”
Certo, e como se faz isso? Simples, execute o comando abaixo no seu terminal… é só copiar e colar que ele faz tudo sozinho:
# Altere .bashrc se for necessário cat >> ~/.bashrc <<EOF # NodeJS + NPM export NODE_PATH="/usr/local/lib/node:/usr/local/lib/node_modules" EOF
Agora reinicie o terminal… Simples não?