Jan 29, 2009 - Project facet Java version 5.0 is not supported. 오류

문제 발생

Project facet Java version 5.0 is not supported.
Project facet Java version 6.0 is not supported.

문제에 대한 고찰

1. 새로운 jre 버전을 설치했습니까?
2. 새로운 jre 로 JSP를 작성해야합니까?
3. Project 를 Dynamic Web Project 로 만들었습니까?

현재 사용하는 JRE 버전이 1.5 이면서, JRE를 1.4 를 써야한다던가
여하튼 지금 사용하는 JRE와는 다른 버전을 사용했을 때 이런 문제가 뜹니다.

원인은?

이클립스 안에는 기본값으로 설정된 [Configuration] 항목의 값을 . [Project Facets] 항목의 값이 Dynamic Web Module java 가 기본값을 그대로 사용합니다.

즉, 현재 기본값으로 설정된 다른 버전의 JRE를 그대로 사용하므로서 인한 혹은 기존에 사용된 JRE가 다른 버전으로 바뀌면서 생성되는 에러인 것입니다.

조치 1.

Properties - > Project Facets
에서 현재 JAVA 를 현재 사용하는 JRE 로 바꿔주면 됩니다.

조치 2.

Dynamic Web Project 로 Project를 만들지 않습니다.

해결

Facets 에 있는 Java 의 셋팅을 현재 사용하는 JRE 버전으로 바꿔주면 됩니다.

Jan 16, 2009 - Perhaps JAVA_HOME does not point to the JDK 오류

문제 발생

exception
org.apache.jasper.JasperException: Unable to compile class for JSP
Unable to find a javac compiler;
com.sun.tools.javac.Main is not on the classpath.
Perhaps JAVA_HOME does not point to the JDK

문제에 대한 고찰

1. Tomcat 을 install 버전으로 깔았습니까?
2. 인스톨 할 당시에 JRE 버전을 1.5 로 맞추었습니까?

여하튼 Tomcat 의 JRE 버전은 1.5 이면서, JAVA_HOME 따위는 건드리지 않고 이클립스가 저절로 잡아준다고
확신하고 살아가는 당신이라면, 문제가 발생할 수 있습니다!

원인은?

톰켓이 JSP 파일을 JAVA 파일로 바꾸고, 이를 컴파일 하기 위해서는 1.5 버전에서는 tools.jar 파일이 필요합니다. 그래서 CLASS_PATH 가 잡여 있어야 하는데, 이게 적용이 잘 안되는 경우가 있는것 같습니다.

조치 1.

내컴퓨터 오른쪽 클릭 > 시스템 등록정보 > 고급 > 환경변수
에서 JAVA_HOME 경로를 제대로 맞추어 줍니다.

조치 2.
%JAVA_HOME%\lib\tools.jar 파일을 %CATALINA_HOME%\common\lib 폴더에 COPY 해 넣습니다.

해결

한마디로 환경변수로 1.5 위치를 잡아 주던가, 아니면 그냥 TOMCAT 의 common 안의 lib 폴더안에, tools.jar 파일을 넣어둡시다.