@Nullable / @NotNull与IntelliJ IDEA,Maven和JSR 305
我非常喜欢代码检查function,现在可以使用JSR 305或Jetbrains的IntelliJ专有注释。 不幸的是,两种实现(JSR 305和Jetbrains’)混合不好:
- IntelliJ显然只能理解它自己的专有注释集并很好地集成它们。
- 在我的Maven Build中使用Findbugs,它只支持JSR-305注释。
唯一可能的解决方法可能是使用JSR-305并使用IntelliJ中的Findbugs插件。 谁有更好的主意? (请不要说改变你的IDE;))。
谢谢托马斯
使用IntelliJ的10.5可以实现这一点: http : //blogs.jetbrains.com/idea/2011/03/more-flexible-and-configurable-nullublenotnull-annotations/
我迟到了,但对于未来的读者来说,这可能很有趣。
从IntelliJ 15.0.2开始,您可以使用其他注释而不是JetBrains注释:
- 转到设置
- 转到
Editor > Inspections
选项卡 - 转到
Java > Probable Bugs > "@NotNull/@Nullable problems"
- 在选项面板的末尾(您可能需要滚动),有一个
Configure annotations
按钮,通向此对话框,您可以从中选择一个众所周知的注释列表:
根据IntelliJ问题IDEA-64677 :
- 在IDEA 10.0.3中应该支持任意@Nullable / @NotNull注释
- 可能会有一些手动配置步骤来支持非专有注释(参见Anna对该页面的评论)
由于这个问题是IntelliJ特定的,因此最好在IntelliJ论坛上询问。 您可能会发现此主题很有趣http://devnet.jetbrains.net/message/5262800 。 使用Findbugs的缺点是它不为运行时检查提供代码注入,并且JSR-305似乎不会很快被批准。