我想让我的团队成员意识到不应该使用String.replace()(因为我们的许多开发人员都不知道正则表达式参数)并建议他们使用StringUtils.replace()代替。
我可以通过告诉他们,通过编写Findbugs,CheckStyle或其他工具的自定义规则,将重点放在代码审查中来做到这一点,但我更愿意在代码中记录这一点并制作编译器意识到我的意图。
如果String是我自己代码中的一个类,我只想添加弃用注释。有没有办法为类添加弃用注释,我没有源?
(不,我不想自己编译JDK作为解决方法:)
答案 0 :(得分:2)
简短的回答是否。
有可行的替代方案,例如在您的群组的样式/错误检查工具(FindBugs,PMD,CheckStyle等)中启用或添加规则。
但是我认为你在这里采取了错误的做法。如果我是你的开发人员之一,我会因为“太过于愚蠢”而无法正确使用String.replace()
或String.replaceAll()
而感到内疚。
如果您的开发人员真的遇到问题,那么您需要对他们进行更多的教育,或者(如果他们确实是愚蠢的......)替换它们。
如果真正的问题是你的代码库充斥着不正确的用法,那么你需要做的就是代码审计;例如grep
代码库,用于所有出现的方法名称,并检查它们。
答案 1 :(得分:1)
这是一个由IDE验证的编译时实用程序,因此没有其他方法可以在方法上添加弃用,您必须更改JDK的源代码并进行编译。
也许如果您正在使用构建工具,请检查是否有任何插件,如果调用特定方法,您可以告诉构建失败