안녕하세요, 오늘은 Java 프로젝트를 빌드한 후 발생했던 'HIGHEST_SPECIAL cannot be resolved or is not a field' 오류와 이를 해결하는 방법에 대해 이야기하고자 합니다. 이 문제는 제가 eGovFramework의 공통 컴포넌트를 빌드한 후에 발생했습니다.
먼저, 이 오류는 'org.apache.taglibs.standard.tag.common.core.Util'의 'HIGHEST_SPECIAL'이라는 필드를 찾을 수 없거나 해석할 수 없다는 것을 나타냅니다. 이 오류 메시지를 해석하면, 프로젝트가 'org.apache.taglibs.standard.tag.common.core.Util'을 포함하는 라이브러리에 의존하고 있지만, 이 라이브러리가 프로젝트 빌드 경로에 존재하지 않는 것을 알 수 있습니다.
이런 경우에는 먼저 프로젝트의 의존성을 확인해야 합니다. Maven을 사용하는 경우, pom.xml 파일에서 'javax.servlet.jsp.jstl' 라이브러리의 의존성을 확인하세요.
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>jstl-api</artifactId>
<version>1.2</version>
</dependency>
이 라이브러리는 JSTL (JavaServer Pages Standard Tag Library) 태그를 처리하는 데 필요합니다.
그리고 'HIGHEST_SPECIAL' 필드가 포함된 'org.apache.taglibs.standard.tag.common.core.Util' 클래스는 jstl-api 버전 1.2 이상에서 사용 가능하므로, 의존성을 최신 버전으로 업데이트 해보세요.
만약 WildFly 서버에서 프로젝트를 실행하고 있다면, 위에서 언급한 라이브러리가 서버 라이브러리에 포함되어 있는지 확인해야 합니다.
WildFly는 기본적으로 JSTL을 지원하지만, 특정 버전의 JSTL만 지원하는 경우가 있으므로, WildFly가 사용하는 JSTL 버전과 프로젝트가 필요로 하는 JSTL 버전이 일치하는지 확인해야 합니다.
참고사항:
JSTL: JSTL은 JSP 페이지에서 사용할 수 있는 여러 가지 표준 태그를 제공하는 라이브러리입니다.
조건문, 반복문, 국제화 및 데이터베이스 액세스 등의 기능을 제공합니다.
WildFly: WildFly는 자바 엔터프라이즈 에디션(Java EE) 애플리케이션을 위한 오픈소스 애플리케이션 서버입니다.
이렇게 확인하고 조치를 취함으로써 'HIGHEST_SPECIAL cannot be resolved or is not a field' 오류를 해결할 수 있습니다. 추가적인 질문이나 의견이 있으시면 댓글을 남겨주시기 바랍니다. 다음에 또 만나요!
'JAVA' 카테고리의 다른 글
Maven에서 Tibero6 JDBC 의존성 추가하기 (0) | 2023.07.14 |
---|---|
eGovFrame 프로젝트 설정: "Invalid LOC Header (Bad Signature)" 에러 해결 (0) | 2023.07.14 |
eGovFramework 3.8 버전에서 JBoss 환경 설정하기 (0) | 2023.07.13 |
Spring 프로젝트에서 'dataSource'를 참조할 수 없는 문제 해결하기 (0) | 2023.07.13 |
Axon Framework에서 @TargetAggregateIdentifier 주석 사용하기 (0) | 2023.03.24 |