사용자 도구

사이트 도구


java:null_check

Java Null Check static analysis

Spring Framework null check annotations

Null 검사 Annotation과 FindBugs

  • JSR 305 annotationjavax 로 패키지가 시작되는데 이것은 Oracle 정책상 라이센스 위반이라서 사실상 사용 금지된 상태로 보인다.
  • Null관련해서 소스에 지정하는 것은 Java FindBugs의 JSR 305 annotation 을 사용한다. 이 어노테이션을 여러 Null Check 프레임워크들이 공통으로 사용한다.
    • @javax.annotation.Nullable : null 일 수 있는 파라미터, 리턴값 등에 지정한다.
    • @javax.annotation.Nonnull : 어노테이션을 지정하지 않은 파라미터 리턴값등은 무조건 @Nonnull 로 자동 지정된다.
  • Findbugs 자체는 의도적으로 null check를 느슨하게 하여 false alarm을 줄여놔서 촘촘하게 검사하지 못한다고 한다.
  • 혹은 Uber NullAway, Checker Framework를 사용하는게 나을 듯.

참조

java/null_check.txt · 마지막으로 수정됨: 2023/06/20 14:06 저자 kwon37xi