Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

build-img não roda e recebo um erro no arquivo fs.js

Instalei o nodejs corretamente e o npm também está funcionando normalmente (versões 12.16.2 e 6.14.4 respectivamente).

Porém estou obtendo o seguinte erro no terminal quando rodo o arquvio:

paulo@macbook:~/Desktop/gulp-course$ npm run gulp build-img

> gulp-course@1.0.0 gulp /home/paulo/Desktop/gulp-course
> gulp "build-img"

fs.js:35
} = primordials;
    ^

ReferenceError: primordials is not defined
    at fs.js:35:5
    at req_ (/home/paulo/Desktop/gulp-course/node_modules/natives/index.js:143:24)
    at Object.req [as require] (/home/paulo/Desktop/gulp-course/node_modules/natives/index.js:55:10)
    at Object.<anonymous> (/home/paulo/Desktop/gulp-course/node_modules/graceful-fs/fs.js:1:37)
    at Module._compile (internal/modules/cjs/loader.js:1156:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1176:10)
    at Module.load (internal/modules/cjs/loader.js:1000:32)
    at Function.Module._load (internal/modules/cjs/loader.js:899:14)
    at Module.require (internal/modules/cjs/loader.js:1042:19)
    at require (internal/modules/cjs/helpers.js:77:18)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! gulp-course@1.0.0 gulp: `gulp "build-img"`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the gulp-course@1.0.0 gulp script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /home/paulo/.npm/_logs/2020-04-14T19_38_06_111Z-debug.log

O arquivo package.json está formatado corretamente e eu inclusive, copiei o código que está no exercicio e colei para ver se era ume rro de digitacão minha, porém o erro persistiu.

Uma coisa que observei é que quando o Flávio instalou o gulp, a pasta node-modules trouxe somente ele, porém quando eu instalei, usando o mesmo comando que o Flávio, a pasta node-modules trouxe vários outros modulos juntos.

Fui dar uma olhada na documentacão oficial, e o get started deles está diferente do jeito que os arquivos foram apresentados no curso. Por isso, fiquei com mais dúvida ainda. Hahahahah!

Se alguém puder ajudar, eu agradeco! :)

Segue código package.json:

{
  "name": "gulp-course",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1",
    "gulp": "gulp"
  },
  "author": "",
  "license": "ISC",
  "devDependencies": {
    "gulp": "^3.9.0",
    "gulp-imagemin": "^2.3.0"
  }
}

Segue código do gulpfile.js

var gulp = require('gulp')
  ,imagemin = require('gulp-imagemin');

gulp.task('build-img', function() {

  gulp.src('/img/**/*')
    .pipe(imagemin())
    .pipe(gulp.dest('/img'));
});

Obrigado pela ajuda!

3 respostas
solução!

Fala ai Paulo, tudo bem? Acredito que esse erro de primordials é por conta de versão do Node.

Recomendo realizar o downgrade para a versão 10.x e tentar rodar o build-img novamente.

Espero ter ajudado.

Matheus, obrigado pela resposta/ajuda!

Eu fiz o downgrade usando o nvm no Linux e instalando e chamando a versão antiga e funcionou perfeitamente.

Só queria entender o porquê desta versão do NodeJs ter esse problema, uma vez que a mesma é versão LTS? Estranho né?

Enfim, obrigado pela ajuda! :)

Magina Paulo, sempre que precisar não deixe de criar suas dúvidas.

Só queria entender o porquê desta versão do NodeJs ter esse problema, uma vez que a mesma é versão LTS? Estranho né?

Na verdade o problema não é o Node e sim o suporte da sua versão atual do Gulp para ele.

Se você utilizar as ultimas versões do Gulp e de suas bibliotecas, o mesmo funciona sem problemas.

Abraços e bons estudos.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software