I have a javascript file with a global object that must not be renamed (_gat
from the Google Analytics async tracker).
This object must not be renamed by the Google Closure Compiler as Google Analytics looks for a variable with this specific name.
I've looked into the Javascript Doc notations that are mentioned: http://code.google.com/closure/compiler/docs/js-for-compiler.html - However, I cannot find anything regarding the "protection" of a variable.
The problem exists no matter if I use simple or advanced compilation.
How can I ensure that the _gat
variable is not renamed?
Using Closure Compiler web app, you can set js_externs
. Refer to Advanced Compilation and Externs for more examples.
// ==ClosureCompiler==
// @compilation_level ADVANCED_OPTIMIZATIONS
// @output_file_name default.js
// @js_externs _gat
// ==/ClosureCompiler==