gulp-uglify: it did not throw detail information when error occurs

when js has syntax error, this plugin output nothing but error stack.

events.js:72
        throw er; // Unhandled 'error' event
              ^
Error
    at new JS_Parse_Error (/Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:189:18)
    at js_error (/Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:197:11)
    at croak (/Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:656:9)
    at token_error (/Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:664:9)
    at unexpected (/Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:670:9)
    at /Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:754:17
    at /Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:703:24
    at block_ (/Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:977:20)
    at ctor.body (/Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:950:25)
    at function_ (/Users/dongming/dev/gitlab/wrench/node_modules/gulp-uglify/node_modules/uglify-js/lib/parse.js:955:15)

About this issue

  • Original URL
  • State: closed
  • Created 10 years ago
  • Comments: 19 (6 by maintainers)

Most upvoted comments

For others like me, who do not know how to get the error message, here is what you need to do:

  1. Install Gulp-util
  2. import the Gulp-util by using the following statement: var gutil = require('gulp-util');
  3. Finally, when you are uglifying the code, attach the error handler like this: .pipe(uglify().on('error', gutil.log))

The fastest solution I’ve found was to capture the error with this:

process.on('uncaughtException', function(error) {
    console.log(error);
    process.exit(1)
})

I put that snippet in my gulpfile.js and I could figure it out where was the problem. It was a problem in my code.

Okay, definitely my fault, I was accidentally streaming a css file into uglify. 😊