Malki
Malki

Reputation: 2385

generate source map with grunt closure compiler?

Is there a way to generate source maps with grunt closure compiler?

I tried both grunt-closure-compiler and grunt-closure-tools but I can't seem to get it to generate the source map file.

Here are my settings:

Here I tried both inside options and outside, both with the value true or path/to/src.map. I couldn't find documentation for this.

    'closure-compiler': {
        lib : {
            closurePath: 'closure-compiler',
            js: 'path/to/src.js',
            jsOutputFile: 'path/to/output.js',
            maxBuffer: 10000,
            // sourceMap: true / 'path/to/src.map'
            options: {
                compilation_level: 'ADVANCED_OPTIMIZATIONS',
                language_in: 'ECMASCRIPT5',
                externs: ['externs/*.js'],
                // sourceMap: true / 'path/to/src.map'
            }
        }
    },

Here I followed the docs but could not get it to work.

    closureCompiler: {
        options: {
            compilerFile: 'closure-compiler/build/compiler.jar',
            create_source_map: 'path/to/src.map',
            compilation_level: 'ADVANCED_OPTIMIZATIONS',
            externs: ['externs/*.js']
        },
        lib : {
            src: 'path/to/src.js',
            dest: 'path/to/output.js'
        }
    }

What am I missing?

Upvotes: 1

Views: 708

Answers (1)

Chad Killingsworth
Chad Killingsworth

Reputation: 14411

For grunt-closure-compiler, this works in my project:

'closure-compiler': {
  dev: {
    js: ['src/**/*.js'],
    jsOutputFile: 'dist/js/output.js',
    maxBuffer: 500,
    noreport: true,
    options: {
      compilation_level: 'ADVANCED_OPTIMIZATIONS',
      language_in: 'ECMASCRIPT5_STRICT',
      warning_level: 'VERBOSE',
      use_types_for_optimization: undefined,
      output_wrapper: '(function(){%output%\n}).call(window)',
      create_source_map: 'dist/js/output.js.map'
    }
  }
}

Upvotes: 2

Related Questions