
어쩌다 학교에서 진행하는 사업으로 에티오피아 학생들에게 eGovFramework 수업을 제공하는 프로그램의 조교로 일하게 되었다.
학생들이 eGovFramework를 설치하고 기본 Web Project를 생성하고 실행해보는 실습시간이 있었는데 질문을 받았던 2~3명이 같은 에러가 뜨면서 서버를 띄우지 못하는 사태가 발생했다.
JDK 20과 Apache Tomcat v9.0을 설치하고, eGovFramework 4.1까지 설치한 뒤 Web Project를 생성하고 실행해보는 처음 IDE를 세팅하는 실습이었다.


이런식으로 Example을 포함한 Web Project를 생성하고 나면

성공적으로 생성은 되는데... 이상한 빨간 느낌표가 나타난다.
(억지로 재현한거라 파일에 생긴 알 수 없는 에러는 뜨지 않았다)

사실 학생들이 뜬 에러는 정확하게 이! 에러는 아니었지만 비슷한 느낌으로 서버를 작동시킬 수 없었다.

Build Path > Configure Build Path

여기서 unbound가 존재한다면 Edit을 눌러 Java 버전을 JDK 11로 바꿔야 한다.
왜 JDK 11인가?
egovFramework 4.1 다운 링크에서 '개발자용 개발환경 64bit(Implementation Tool) Version 4.1.0' 게시글의 Troubleshooting 항목을 보면 '(JDK는 11 버전 사용이 필수)'라고 떡하니 적혀있다.
unbound가 있는 Java library도 없다면 Add Library > JRE System Library로 추가한다.

Installed JREs... > Add > Standard VM > Directory에서 java 경로를 설정한다.

JDK 11을 default로 설정하고 Apply and Close하면 JDK 11의 Library를 추가할 수 있게 된다.

이 포스트를 작성하면서 원래 Java SE-1.8로 잘 되던걸 JDK 20로 억지로 꼬아서 에러를 재현하다가 원래대로 바꿔도 'The JRE could not be found'가 계속 뜨길래 본의 아니게 Troubleshooting을 하게 되었다...
해결 방법은 Window > Preferences에서 Server > Running Enviroments에 들어간 뒤

Edit에서 JRE 버전을 수정하면 정상 작동한다.
참고 : https://miniweb4u.tistory.com/181
외국학생들의 질문에 에러를 고쳐보려고 어색한 영어로 허둥지둥하다가 우연히 Java Build Path 수정하는 방법을 찾아서 위기를 모면하긴 했지만 꽤나 심장쫄리는 경험이었다...
그리고 이걸 글로 쓰면서 재현하다가 다른 에러 해결방법까지 다루게 될 줄은 몰랐다...