
Tenho tentado fazer com que o jslint seja executado em meu sistema, mas não consegui. Eu segui a rota npm e simplesmente executei, sudo npm install -g jslint
estou usando o pacote nodejs, não o node-legacy. Também fiz um link simbólico para: sudo ln -s /usr/bin/nodejs /usr/bin/node
porque não estava encontrando o node. Então o JSlint foi instalado, mas quando executo o jslint no terminal, recebo isto: `
module.js:340
throw err;
^
Error: Cannot find module 'readable-stream'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/home/felipe/.npm/j slint/0.9.0/package/lib/stream.js:1:80)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)`
então corri sudo npm install -g readable-stream
, para verificar se olhei em /home/me/.npm/ e se realmente há uma pasta legível-stream. Versão 1.0.33 para ser exato. E ainda recebo o mesmo erro. Então estou sem ideias. Eu apreciaria qualquer ajuda para tentar resolver esse problema.
Eu estava tentando fazer com que o JSLint funcionasse no texto sublime 3 usando package install -> JSLint e também tentei o SublimeLinter, mas falhei com todos os 3. Eu sempre poderia instalar colchetes que vêm com o JSLint por padrão, mas gostaria para fazê-lo funcionar no terminal também e possivelmente no st3
Responder1
O problema parece estar acontecendo aqui:
/home/felipe/.npm/j slint/0.9.0/package/lib/stream.js:1:80
(Não tenho certeza do que esse espaço está fazendo j slint
... talvez valha a pena investigar?) Se você olhar o conteúdo desse arquivo, deverá ver algo assim:
module.exports = require('readable-stream');
Nada muito revolucionário aí, mas por algum motivo sua configuração parece não estar conseguindo resolver essa dependência. Uma coisa que você pode fazer é instalá-lo manualmente dentro da pasta jslint:
cd ~/.npm/jslint/0.9.0/package
npm install
Isso encontrará o package.json
arquivo dentro do diretório jslint e instalará todas as suas dependências localmente em uma node_modules
pasta.
Se isso não funcionar, algo estárealmentequebrado. Nesse caso, eu estaria inclinado a culpar o pacote Node.js no Ubuntu e recomendo que vocêrecomeçar, usando nvm para gerenciar o nó.