Intellij idea 禁用";“未使用”;类的公共方法的警告
新的intellij升级(10.5)现在显示了一个警告,即未使用为类定义的某些方法。这些方法是公开的,我计划不使用所有这些方法,因为我创建它们是为了支持预期的API。我想禁用此警告(不用于类中的公共方法)。有办法吗 禁用Intellij idea 禁用";“未使用”;类的公共方法的警告,intellij-idea,public-method,Intellij Idea,Public Method,新的intellij升级(10.5)现在显示了一个警告,即未使用为类定义的某些方法。这些方法是公开的,我计划不使用所有这些方法,因为我创建它们是为了支持预期的API。我想禁用此警告(不用于类中的公共方法)。有办法吗 禁用设置|检查|声明冗余|未使用声明代码检查。作为一个选项,您可以为您的API类创建一个自定义范围,并仅在每个API范围内禁用此检查,以便它在项目的其余部分仍然有效。这是一个旧线程,但我在这里结束的速度比我找到解决方案的速度快,因此我将继续并分享我的发现。 首先,我不确定我们使用的是
设置
|检查
|声明冗余
|未使用声明代码检查。作为一个选项,您可以为您的API类创建一个自定义范围,并仅在每个API范围内禁用此检查,以便它在项目的其余部分仍然有效。这是一个旧线程,但我在这里结束的速度比我找到解决方案的速度快,因此我将继续并分享我的发现。
首先,我不确定我们使用的是同一种语言(这里是JS),但我们使用的是基于GUI的工具,这就是我最终得到的结果。
以下代码给了我臭名昭著的“未使用”警告:
还有“未使用的定义myMethod”
检查员最后建议忽略这个具体问题,添加
//noinspection JSUnusedGlobalSymbols
位于此特定方法的正上方,以便以下代码不再导致此警告:
//noinspection JSUnusedGlobalSymbols
/**
* Some public method
* @api public
*/
MyClass.prototype.myMethod = function () {
return null;
};
其他警告(输入错误等)似乎仍然会出现,包括未使用的局部变量和参数,因此它似乎隔离了这个特定问题。
缺点是,如果代码太多,它往往会污染您的代码…IDEA 2016.3 在即将发布的版本中(预览版本已经可用),现在可以调整检查范围:
Settings | Editor | Inspections | Declaration redundancy | Unused symbol/declaration
在IntelliJ IDEA 14.1中,该选项似乎不存在了。您可以对这样的单个方法禁用它
@SuppressWarnings("unused")
public void myMethod(){...}
我认为避免突出显示未使用的公共方法的最好方法是在您的API中为这些方法编写两个测试。我刚刚单击了“suppress for statement”,webstorm预先准备了以下内容:
//noinspection JSUnusedGlobalSymbols
在最新版本中,此选项位于
设置>检查>Java>声明冗余>未使用声明>方法下
取消选中不需要的选项。2018-2019
以下是2019年的更新:
IntelliJ IDEA 2018.3.2(社区版)
建造#IC-183.4886.37,建造于2018年12月17日
设置|编辑器|检查|声明冗余|未使用声明
最近在扩展库时,我还收到了“未使用”检查警告 想想为什么IntelliJ发出信号 通常在进行重构时,所有未使用的方法/参数都应该可以安全删除(通过Intellij的安全删除操作) IntelliJ(如Checkstyle和其他)的目的就是支持我们的干净设计。由于未使用的方法既不在内部使用(在
src/java/main
中),也不在外部测试(在src/java/test
中),因此它们似乎已经过时了。那么,为什么不遵循“有疑问时,扔掉它”这句话呢
在重构时,这是一个真正的建议。
但是,如果我们正在开发一个库/API,该库/API打算由其他代码库(来自ouside的模块/依赖项)使用,那么我们宁愿回答“不使用时,会感到困惑”
我们对IntelliJ的警告感到惊讶。不应删除这些方法,因为它们实际上打算在其他地方使用。它们是入口点
然后选择合适的解决方案
以下所有解决方案都有一个共同点:
- 通过您的代码进行通信,以便每个IDE和开发人员都能理解(例如,添加一个测试以便使用)
- 告知您的意图(例如,通过重新配置代码检查告知IntelliJ)
- 作为IntelliJ检查设置内的可选对话框选项卡
- 作为:
IMO更好的方法是将类标记为“入口点”——Tanya Jivvca 8月18日8:46
- 在IntelliJ的论坛上:(我引用下面的重点):
.idea\misc.xml
下
很遗憾,没有选项只对公共方法禁用此检查,而对私有方法保持启用状态。有,请参阅我的其他答案。它又消失了。看见
//noinspection JSUnusedGlobalSymbols