使用Node.js进行闭包编译

我想编译这个Node.js模块(仅用于types检查)

var externalRequire = require; var Pool = externalRequire('pg-pool'); var config = {}; var pool = new Pool(config); module.exports = {}; 

用这些Closure编译器的选项:

 java -jar compiler.jar --js_output_file output.js --use_types_for_optimization --warning_level VERBOSE --jscomp_warning=reportUnknownTypes --jscomp_warning=checkTypes --compilation_level ADVANCED_OPTIMIZATIONS --process_common_js_modules --externs externs.js --js src.js 

externs.js只包含一个定义:

 /** * @param name * @return {*} */ var require = function(name) {} 

问题是,我不知道如何解释Closure编译器,“池”不是一个对象的实例,但types。

 src.js:5: WARNING - cannot instantiate non-constructor var pool = new Pool(config); ^ src.js:5: WARNING - could not determine the type of this expression var pool = new Pool(config); ^ 0 error(s), 2 warning(s), 88,9% typed 

如何避免这些错误?