对类的公共方法禁用“未使用”警告

新的intellij升级(10.5)现在显示一个警告,一些为类定义的方法没有被使用。 这些方法是公开的,我打算不使用所有这些方法,因为我已经创build了它们来支持期望的API。 我想禁用此警告(不用于类中的公共方法)。 有没有办法做到这一点?

你可以像这样一个单一的方法禁用它

@SuppressWarnings("unused") public void myMethod(){...} 

禁用Settings | Inspections | Declaration redundancy | 未使用的声明代码检查。 作为选项,您可以为您的API类创build一个自定义作用域,并且仅对每个API作用域禁用此检查,以使其仍然可以在项目的其余部分中工作。

IDEA 2016.3

在即将到来的版本IDEA 2016.3 (预览版本已经可用)中,现在可以调整检查范围:

在这里输入图像说明

<IDEA 14.0

如果要强调未使用的公开方法,请启用“设置|检查|声明冗余|未使用的声明”全局检查。

如果要突出显示未使用的私有方法,请启用“设置|检查|声明冗余|未使用的符号”本地检查。

所以,如果你想突出显示未使用的私人成员,但不强调未使用的公共成员,closures“未使用的声明”,并打开“未使用的符号”。

资源

我刚刚使用IDEA 13.1.4进行了testing,并且完全按照所述进行了工作。

IDEA 14.x

在IntelliJ IDEA 14.0.x中,设置位于:

 Settings | Editor | Inspections | Declaration redundancy | Unused symbol/declaration 

在IntelliJ IDEA 14.1中,该选项似乎没有了。

在最新版本中,此选项位于Settings>Inspections>Java>Declaration redundancy>Unused declaration>Methods取消选中不需要的选项。

这是一个古老的线索,但我最终以比我能find解决scheme更快的速度结束了,所以我将继续分享我的发现。 首先,我不确定我们是否使用相同的语言(JS在这里),但是基于GUI的工具摆弄,这是我最终的结果。 下面的代码给了我臭名昭着的“未使用”警告:

 /** * @class sample class */ var MyClass = function () { return this; }; /** * Some public method * @api public */ MyClass.prototype.myMethod = function () { return null; }; 

有“未使用的定义myMethod”检查员最终build议通过添加忽略这个具体问题

 //noinspection JSUnusedGlobalSymbols 

在这个特定的方法的顶部,以便下面的代码不会再导致这个警告:

 //noinspection JSUnusedGlobalSymbols /** * Some public method * @api public */ MyClass.prototype.myMethod = function () { return null; }; 

其他警告(types错误等)似乎仍然显示,包括未使用的本地variables和参数,所以它似乎孤立这个特定的问题。 缺点是,如果你有很多的话,它会污染你的代码。

我只是点击“压制声明”和webstorm前面这个:

 //noinspection JSUnusedGlobalSymbols 

我认为避免突出显示未使用的公共方法的最好方法是在API中为这些方法编写几个testing。