Google closure compiler: Learnings from it.
- Produces optimized results
- Should be well tested as used by Google
- Supports Splits.
- Very obscure documentation, very few resources
- Build system doesn't understand NPM module system completely, it does add support but you need to provide all the files which are needed to build the resource:
java -jar compiler.jar --dependency_mode=STRICT --entry_point=js/index.js --module_resolution=NODE --js_output_file=js/dist.js --js=js/**.js --js=node_modules/jquery/dist/jquery.js --js=node_modules/jquery/package.json --js=package.json
- Does not support CSS build or any other asset build