책을 쓰시는 분이나 온라인 강의를 하시는 분들 모두 모든 사람의 환경을 지원하기는 어렵다는 것을 알기에 개발 도구와 환경에 대한 설정 부분은 중요하면서도 별것 아닌 오류들로 인하여 불필요한 시간을 많이 보내곤 한다.
오래된 개발자로 자바를 2002년도에 배우고 2007년 까지 쓰고 그 이후로 멈추었다가. 24년이 되어서 책장을 뒤적거리고 서점을 뒤적거리다가 한번 해볼까? 하는데. 모든게 새롭다. 재미있기도 또 옛날 생각나기도 (추억에 빠져.. 잠시 농땡이) 그러나. 뭔가 쉬워진건지 어려워 진건지.. 도통 감이 안온다.
[인공지능에게 나를 설명했더니 이렇게 표현해줘서 - 감동?]
설정 하면서 부터 일단 여기 저기 에러 발생. 자바 스프링 부트 개발 환경 설정 중에 만난 다양한 오류 알림들을 나 혼자 다시 보자고 정리 해본다.
#1 - cvc-elt.1.a cannot find the declaration of element 'project'
pom.xml 파일 초기 열었을 때 오류가 있다고 위와같은 메세지가 나오는 경우 해결 방법 하단의 링크 주소가 기본적으로 https 로 되어 있는데 여기서 s 를 제거 하여 준다.
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
#2 - Missing artifact javax.servlet.jsp.jstl:jstl:jar:1.2 오류
JSTL 부분 별도 의존성 추가시 발생하는 오류 기본은 " <artifactId>jstl</artifactId> " 이 내용을 <artifactId>jstl-api</artifactId> 이렇게 변경하여 작성 하면 오류해결
<dependency>
<groupId>javax.servlet.jsp.jstl</groupId>
<artifactId>jstl-api</artifactId>
<version>1.2</version>
</dependency>
도대체 이런 어이없는 것들이 시간을 잡아 먹는다. 인공지능에게 물어 보는게 더 빠르다는 현재의 결론 물어 보면 바로 바로 대답해준다. 결국 검색 내용을 기반으로 했을까?
#3 - STS The import org.junit cannot be resolved 에러
책에 제발 좀 안나오는 에러는 안났으면 좋겠지만. 어쩌겠어. 해당 오류는 JUnit 모듈이 추가 되어 있지 않아서 발생 하는 오류 임. 임시 또는 하고 있는 프로젝트에 Build Path 부분에 해당 라이브러리를 추가 하면 된다.
#4 - org.springframework.boot cannot be resolved 에러
정말로 가지 가지 한다. 하단 링크 참조 하면 더 자세히 볼 수 있음
일단 결론적으로 pom.xml 의 기존 내용에 주석 처리 하도록 한다.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<!-- <scope>test</scope> 이 부분 주석 처리 하면 사라짐 -->
</dependency>
#5 - javax.persistence cannot be resolved 오류
spring boot 3에는 Jakarta EE 9이 포함됨에 따라 javax 관련 패키지명이 javax에서 jakarta로 변경되었습니다. 따라서 jakarta로 사용하시는 게 정상임
Comments