2017-06-16 89 views
1

使用关闭编译器,我得到警告:禁止“不能实例非构造函数”警告

不能实例非构造

这只是一个警告和代码运行正常。尽管如此,我讨厌警告我知道对应用程序没有任何影响。发生此警告的一些代码来自第三方库,但其中一些来自我自己的。

有没有办法来压制这个警告?

+0

你需要更多帮助吗?如果您提供有关错误的更多细节,也许有人可以提供更多帮助。 – owler

回答

0

您可以使用此选项:

--warnings_whitelist_file VAL   : A file containing warnings to 
              suppress. Each line should be of the 
              form 
              <file-name>:<line-number>? 
              <warning-description> (default:) 

这可能是有用的,以抑制来自第三方代码警告:

--hide_warnings_for VAL    : If specified, files whose path 
              contains this string will have their 
              warnings hidden. You may specify 
              multiple. 

也有这样的:

--warning_level (-W) [QUIET | DEFAULT : Specifies the warning level to use. 
| VERBOSE]        Options: QUIET, DEFAULT, VERBOSE 
              (default: DEFAULT) 

要查看可用选项的完整列表,执行如下命令:

java -jar ../closure-compiler/target/closure-compiler-1.0-SNAPSHOT.jar --help 

但是请注意,您正在传递Closure Compiler的一些好处,以便对代码进行类型检查。如果您提供有关错误的更多详细信息以及它在代码中发生的位置,我可能会建议使用该注释。

0

对于您自己的代码,请使用ES2015类语法,或将@constructor批注添加到函数构造函数中。这告诉编译器该函数打算用new运算符调用。

对于第三方代码,隐藏警告是最好的。