将Java运行时的Mark方法标记为已弃用

时间:2013-03-08 10:18:41

标签: java deprecated

我想让我的团队成员意识到不应该使用String.replace()(因为我们的许多开发人员都不知道正则表达式参数)并建议他们使用StringUtils.replace()代替。

我可以通过告诉他们,通过编写Findbugs,CheckStyle或其他工具的自定义规则,将重点放在代码审查中来做到这一点,但我更愿意在代码中记录这一点并制作编译器意识到我的意图。

如果String是我自己代码中的一个类,我只想添加弃用注释。有没有办法为类添加弃用注释,我没有源

(不,我不想自己编译JDK作为解决方法:)

2 个答案:

答案 0 :(得分:2)

简短的回答是否。

有可行的替代方案,例如在您的群组的样式/错误检查工具(FindBugs,PMD,CheckStyle等)中启用或添加规则。


但是我认为你在这里采取了错误的做法。如果我是你的开发人员之一,我会因为“太过于愚蠢”而无法正确使用String.replace()String.replaceAll()而感到内疚。

如果您的开发人员真的遇到问题,那么您需要对他们进行更多的教育,或者(如果他们确实是愚蠢的......)替换它们。

如果真正的问题是你的代码库充斥着不正确的用法,那么你需要做的就是代码审计;例如grep代码库,用于所有出现的方法名称,并检查它们。

答案 1 :(得分:1)

这是一个由IDE验证的编译时实用程序,因此没有其他方法可以在方法上添加弃用,您必须更改JDK的源代码并进行编译。

也许如果您正在使用构建工具,请检查是否有任何插件,如果调用特定方法,您可以告诉构建失败