Dmi*_*try 54 java intellij-idea non-nullable
我有一个具有以下签名的功能
public static String myFunction(@Nonnull String param)
Run Code Online (Sandbox Code Playgroud)
当我用param调用它为null时,我得到以下异常:
Caused by: java.lang.IllegalArgumentException: Argument for @Nonnull parameter 'param' of com/MyClass.myFunction must not be null
at com.MyClass.$$$reportNull$$$0(MyClass.java)
Run Code Online (Sandbox Code Playgroud)
不应该在运行时检查javax.annotation.Nonnull.
谁真的抛出异常,为什么?
PS我使用Oracle JDK 1.8.0_102从IntelliJ IDEA 2016.3以调试模式运行Tomcat服务器
yol*_*ole 82
在IntelliJ IDEA中编译项目时,它会检测已编译类的字节码,以便为各种@Nonnull注释添加运行时检查.此行为由选项控制:
设置| 构建,执行,部署| 编译器| [x]为非空注释的方法和参数添加运行时断言.
| 归档时间: |
|
| 查看次数: |
11648 次 |
| 最近记录: |