program tip

"주석 속성 값은 상수 표현식이어야합니다."메시지 제거

radiobox 2020. 12. 2. 08:19
반응형

"주석 속성 값은 상수 표현식이어야합니다."메시지 제거


이 질문에 이미 답변이 있습니다.

내 코드에 주석을 사용하고 런타임에 결정되는 값을 사용하려고합니다.

내 목록을 static final(lst) 로 정의 하고이 목록에 몇 가지 요소를 추가합니다.

를 사용할 때 lst.get(i)컴파일 오류가 발생합니다.

The value for annotation attribute must be a constant expression

이 문제에 대한 해결책은 무엇입니까?


주석 값은 컴파일 시간 상수 여야하므로 수행하려는 작업을 수행하는 간단한 방법이 없습니다.

참조 : 상수 자바에서 주석에 값을 제공하는 방법

프로그램을 실행하기 전에 값을 알고있는 경우 일부 컴파일 시간 도구 (ant, maven?)를 사용하여 구성 할 수 있습니다.


Java의 상수 표현식은 다음과 같습니다.

package com.mycompany.mypackage;

public class MyLinks {
  // constant expression
  public static final String GUESTBOOK_URL = "/guestbook";
}

다음과 같이 주석과 함께 사용할 수 있습니다.

import com.mycompany.mypackage.MyLinks;

@WebServlet(urlPatterns = {MyLinks.GUESTBOOK_URL})
public class GuestbookServlet extends HttpServlet {
  // ...
}

참고 URL : https://stackoverflow.com/questions/16509065/get-rid-of-the-value-for-annotation-attribute-must-be-a-constant-expression-me

반응형