如何在Eclipse中为标准Java API创建自定义警告

我希望Eclipse在我的Java项目中警告使用旧的Date / Calendar API,只允许Java 8全新的Date-Time API作为源中使用的一个。

如果使用例如java.util.Date ,我如何配置Eclipse以显示警告?

我很高兴接受关于这种方法的其他评论,以及其他替代方案。 我知道我也应该在CI构建中应用这种类型的validation,以及Java Policy可能是另一种选择。

您可以为项目添加一个访问规则 ,使Eclipse在使用某个类时显示警告。 右键单击您的项目 – >属性 – > Java构建路径 – >库 。 展开JRE系统库 (因为您的目标类是java.util.Date )并选择Access rules ,然后单击Edit

在此处输入图像描述

在显示的对话框中,单击添加并填写分辨率(例如,Discouraged将生成警告)和要匹配的模式。 在您的情况下,模式是java/util/Date

另一种方法是编写自定义注释并使用Java注释处理API( JSR269 )来处理它们以生成警告。 但是,这需要您注释代码中使用该类的所有位置。