[Error/Spring] unknown enum constant When.MAYBE

2024. 9. 28. 12:51Backend/Spring

 

Error

 

프로젝트를 컴파일 하는 과정 중에서 발생한 에러 코드이다. 

 

warning : unknown enum constant When.MAYBE

 

 

원인

 

해당 에러 코드는 프로젝트에서 사용하는 @Nullable 의 영향으로 발생하는 에러 코드이다. 여기서 @Nullable은 해당 애노테이션이 붙은 필드나 파라미터가 null이 될 수도 있다는 annotation이다. 빌드 등에 해당 애노테이션이 사용되면서, 필요한 열거형(When)의 특정 값을 찾을 수 없어 발생하는 문제였던 것으로 파악된다. 

 

해결

 

해결을 위해서는 의존성에 해당 코드를 추가해주면 된다.

 

1) build.gradle 이라면

dependencies {
    /* 중간 생략 */
    implementation 'com.google.code.findbugs:jsr305:3.0.2'
}

 

2) pom.xml 이라면

<dependency>
    <groupId>com.google.code.findbugs</groupId>
    <artifactId>annotations</artifactId>
    <version>3.0.1</version>
</dependency>

 

 

References

1. jsr305 및 javax.annotation.meta.When 내용

 

 

When - jsr305 3.0.2 javadoc

Latest version of com.google.code.findbugs:jsr305 https://javadoc.io/doc/com.google.code.findbugs/jsr305 Current version 3.0.2 https://javadoc.io/doc/com.google.code.findbugs/jsr305/3.0.2 package-list path (used for javadoc generation -link option) https:/

javadoc.io

2. stackOverFlow 참고 내용

 

 

Spring nullable annotation generates unknown enum constant warning

In my app, whenever I add @Nullable (which imports from org.springframework.lang.Nullable) to any of the fields, I get a build warning: Warning:java: unknown enum constant javax.annotation.meta...

stackoverflow.com

3. mvnRepository 의존성 참고 문서

https://mvnrepository.com/artifact/com.google.code.findbugs/jsr305