| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
- 설정파일분리
- Spring
- viewResolver
- xml
- 인터페이스
- 아이텀2
- macoracle
- Interface
- 스프링프레임워크
- iterm2
- springframework
- annotation
- IoCContainer
- 깃커스텀
- URLmapping
- 자바
- Sts
- di
- git커스텀
- github
- servlet
- 프레임워크
- 깃
- 객체지향프로그래밍
- oracle
- 스프링
- GIT
- 깃허브
- 객체지향
- Java
- Today
- Total
공부만이 살길
[에러] Spring setting.xml 파일 설정 cvc-elt.1.a: Cannot find the declaration of element 'beans'. 에러 본문
[에러] Spring setting.xml 파일 설정 cvc-elt.1.a: Cannot find the declaration of element 'beans'. 에러
공부만이 살길이야 2024. 1. 23. 16:20스프링을 공부 중 처음 만나게 된 문제.
Spring의 기본적인 도구들을 다운받기 위해, Eclipse Marketplace에서 Spring을 install 받았다.

하지만 이게 웬걸 ?

무한 에러.. 계속되는 에러에 다시 프로젝트를 재생성하여 진행해보아도 설치가 안되는것은 똑같았다.
계속해서 찾아보니, 어떤 친절한 분이 이런 댓글을 남겨주신 것을 발견했다.

현재 이클립스 최신 버전들의 경우 Spring tools 3 Add-On은 지원하지 않는다는 것..
참고로 나는 뉴렉처님의 https://youtu.be/Jwoz4ORX60A?si=WVusxv1cgHUkdLdB 강의를 보고 스프링을 공부 중이었기 때문에
위 강의에서 나왔던 설정 파일에 대한 코드를 보고 Setting.xml을 직접 작성하기로 했다.

그러나 위 코드대로 setting.xml을 새롭게 작성하였지만,

두개의 새로운 에러와 마주하게 되었다..


이건 또 무슨 에러인가..
우선은 위 에러를 두고, 다른 해결방법들을 찾아보았다. 원천적으로 직접 설정파일 설정을 하지 않으려면
스프링을 다운로드 받으면 되는 부분이라고 생각하였다.
2023 - 01 - 23 16:00 문제해결 시도 방법
1. STS를 다운로드하는 방법

3.9 버전 다운 후 해당 에러 발생으로 실패 하였다.
4 버전은 스프링 부트여서, 스프링을 공부하려는 나에게는 의미가 없었다.
2. Install new software 를 활용하여 직접 링크를 넣어 다운로드
http://download.springsource.com/release/TOOLS/update/e4.8/


위 이미지처럼 마찬가지로 spring IDE 관련 요소들만 설치가 불가능한 상황이 옴. 실패
우선은 해결방안을 더 찾아보고, 찾는 즉시 바로 글을 업데이트하도록 하겠다.
2023 - 01 - 24 01:00
1. STS를 다운로드 하는 방법 : 실패 사유
아무래도 자바 JDK의 버전이 20으로 너무 최신 버전이라 일어났던 방법인 것 같다.
자바 버전을 11 정도로 낮추면 호환이 가능할 것 같다.
다만, homebrew를 통해 11버전을 다운로드 하고 기본 환경변수를 바꾸었으나,
마찬가지로 jdk-20 관련 에러 메시지가 계속 뜨기도 하고,
나는 본래 eclipse내에서 진행을 하려고 했던 터라 다른 방법을 계속 찾아보았다.
2. Eclipse version & JDK version
사실상 이클립스 마켓플레이스 내 STS를 다운로드 받지 않더라도, 스프링을 maven project 내에서
구현해낼 수 있기 때문에, 처음 setting.xml을 작성하였을 때 에러가 발생하는 부분은 이해하기 쉽지 않았다.
뭘 하던 에러, 그다음 해결방법도 에러.. 이게 발생되다보니 스트레스를 받았고, ' 아 그냥 스프링부트나 할까.. ' 라는 생각까지..
그래도 꾹 참고, STS를 공식 홈페이지에서 다운로드 받았을 때 JDK-20 버전으로 인해 안된다고 했던 에러메시지와
유튜브 댓글에서 보았던 Eclipse 버전 이야기를 토대로, 내 버전을 확인했다.

Eclipse 역시 2023년 8월 버전, Java JDK - 20 버전으로 꽤나 최신 버전인 것을 확인했고

터미널에서 brew install openjdk@11 을 통해 다운로드 받았다.

그리고 이제 PATH 설정을 해서, 맥북내에서 자동으로 자바 버전 환경변수를 설정하게끔 해야하는데,
경로를 찾는 법을 몰라 마구 헤맸었다.
이럴 때엔 brew --prefix openjdk@11 을 활용하면된다.

위처럼 homebrew를 통해 다운로드 받은 요소에 대한 경로를 찾을 수 있다.


순서를 알려드리자면,
1. nano ~/.zshrc 를 입력하여 환경변수를 설정하는 쉘 설정 파일을 오픈한다.
2. export PATH="/opt/homebrew/opt/openjdk@11/bin:$PATH" 를 입력한다.
3. control + X 를 누른 후, Y를 누르고 엔터를 눌러 저장한다.
이제 java -version을 통해 자바 버전을 확인한다.

여기까지 Java Version을 변경하는 방법이고, Eclipse 역시 다운그레이드하여 재설치 하였다.
맥 환경에서 Eclipse를 완전히 제거하는 방법
1. 응용 프로그램에서 Eclipse 아이콘을 찾아, 휴지통으로 보내기
2. 터미널에서 rm -rf ~/.eclipse 을 입력 ( .eclipse 파일 내에 다양한 이클립스의 설정파일이 담겨있음. )
만약 2가 권한 문제로 실행되지 않을 경우 앞에 sudo를 붙혀주세요.
3. 이후 공식 홈페이지에서 다운그레이드 버전을 다운로드.
M1 맥버전의 경우 Arch64 버전을 지원해야하는데, 가장 구 버전이 2021년 9월 버전이니 참고하셔서 다운로드해주세요.
이러한 과정을 거치고 다시한번 Eclipse를 실행하여 Marketplace에서 다운로드를 실행하였으나,
An error occurred while collecting items to be installed
session context was:(profile=epp.package.jee,
phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=).
라는 에러가 발생하였다. 아무래도 P2 엔진과 관련된 문제같은데, 아무리 찾아봐도 동일한 레퍼런스를 도저히 찾을 수 없었다.
실망감을 감출 수 없었지만 침착하게 setting.xml 파일을 작성해서, 직접 작성하는 경우에도 마찬가지로 에러가 발생하는지 체크하였다.

<Beans> 태그와, xsi:schemaLocation="...3.0.xsd" 부분에서 발생하던 에러가 사라졌다.
아무래도 eclipse의 최신 버전 혹은 JDK-20과 스프링 setting.xml 파일 간에 호환성 이슈가 있었던 것 같다.
우선은 일부 해결이 되었으므로, 마저 스프링 관련 초기 세팅을 진행해보도록 하고 또 다른 이슈가 있다면 업로드해보도록 하겠다.
'Error' 카테고리의 다른 글
| Mybatis 설정중 Downloading external resources is disabled 에러 (0) | 2024.04.10 |
|---|