我正在尝试使用Closure Compiler Java API编译大量的JS文件,但它在字符串文字<>&=
中转义了这些字符,尽管从命令行调用它时并非如此。
CompilerOptions options = new CompilerOptions();
options.setLanguageIn(ECMASCRIPT5);
options.setLanguageOut(ECMASCRIPT5);
options.setOutputCharset(Charset.forName("UTF-8"));
CompilationLevel.SIMPLE_OPTIMIZATIONS.setOptionsForCompilationLevel(options);
SourceFile extern = SourceFile.fromCode("externs.js", "");
SourceFile input = SourceFile.fromCode("input.js", "'<a>'");
Compiler compiler = new Compiler();
compiler.compile(extern, input, options);
System.out.println(compiler.toSource());
这是输出:
"\x3ca\x3e";
答案 0 :(得分:0)
我通过测试每个CompilerOptions选项找到答案:
options.setTrustedStrings(true);