我正在尝试用谷歌的闭包编译器编译ExtJS 6.2.0。在extjs源代码中有如下注释:
* @param {Ext.data.TreeModel[]} records An array of records.
关闭错误,因为它不能识别这种类型的注释。错误如下所示:
extjs-6.2.0/build/ext-all-debug.js:248792: ERROR - Bad type annotation. expecting a variable name in a @param tag. See https://github.com/google/closure-compiler/wiki
我在编译的时候遇到了下面的错误。如何找出哪个文件受到影响并导致此错误?
splitPointToFragmentMap[38] = 16
[ERROR] Nov 19, 2012 2:33:28 AM com.google.gwt.thirdparty.javascript.jscomp.PhaseOptimizer$NamedPass process
[ERROR] INFO: processGoogScopeAliases
[ERROR] Nov 19, 2012 2:33:28 AM com.google.gwt.thirdpa
我在阅读的代码段时,看到了下面的代码片段:
/**
* Gets the document object being used by the dom library.
* @return {!Document} Document object.
*/
goog.dom.getDocument = function() {
return document;
};
为什么我们在getter方法中包装了文档引用?文档不是一个全局对象吗?
我发现CompilerOption中的一些选项不能导出到命令行。
例如,闭包编译器的Java API CompilerOption中提供了alias all strings,但我不知道如何在命令行中设置它。
我知道我可以创建一个新的java类,比如:
Compiler c = new Compiler();
ComppilerOptions opt = new ComppilerOptions();
opt.setAliasAllString(true);
c.compile(.....);
但是,我必须自己处理命令行参数。
有什么简单的想法吗?
======================