grunt-qpoc-closure-compiler

Extended closure compiler plugin with module support.

UNDER DEVELOPMENT

grunt-qpoc-closure-compiler

Extended closure compiler plugin with module support.

This plugin requires Grunt ~0.4.1

If you haven't used Grunt before, be sure to check out the Getting Started guide, as it explains how to create a Gruntfile as well as install and use Grunt plugins. Once you're familiar with that process, you may install this plugin with this command:

npm install grunt-qpoc-closure-compiler --save-dev

One the plugin has been installed, it may be enabled inside your Gruntfile with this line of JavaScript:

grunt.loadNpmTasks('grunt-qpoc-closure-compiler');

In your project's Gruntfile, add a section named qpoc_closure_compiler to the data object passed into grunt.initConfig().

grunt.initConfig({
  qpoc_closure_compiler: {
    your_mode: {
      options: {
        // Task-specific options go here. 
 
        // path to compiler.jar of google closure compiler 
        // default: environment variable CLOSURE_COMPILER 
        closureCompiler: './compiler.jar',
 
        // path to the closure library folder which contains "closure", 
        // "third_party" ... 
        // default: environment variable CLOSURE_LIBRARY 
        closureLibrary: '/closure-library/',
 
        // Java executable path 
        // default: 'java' 
        javaPath: 'java',
 
        // whether automaticaly add the closure library to the pathes 
        includeClosureLibrary: true, // default: true 
 
        workspaces: [
          {
            // paths to libraries which are required in your application 
            path: './lib/'
          }
          // ... further ones 
        ],
 
 
        // defines the way you want to split your application 
        modules: [
          // define your main module at the start 
          // it's required to define one main module which will be the 
          // dependency of all further modules 
          {
            // path to the initiate script of the module 
            path: './lib/init.js',
 
            // name of the module 
            name: 'app'
          },
 
          {
            path: './lib/the_mod.js',
            name: 'the_mod',
            // array of modules which are required 
            dependencies: ['app']
          }
        ],
 
        level: {
          advanced: true // default is false 
        },
 
        // formatting of the code exported by the compiler 
        prettyPrint: false, // default is true 
 
        // path for the generated files 
        // default: ./tmp/ 
        outputDir: '.',
 
        // prefix for the exported module javascript files. 
        // example: module name "app", prefix: "module_" 
        // => "#{ outputDir }/module_app.js" 
        modulePrefix: '',
 
        // automaticaly exports a module.js.map into the outputDir 
        sourceMaps: true // default: false 
      }
    }
  },
})

Type: String Default value: environment $CLOSURE_COMPILER

Description following...

To be continued... Please look at the example above

(Nothing yet)