본문 바로가기

프로그래밍 학습/Error

[JSP] The type (package.class) cannot be resolved. It is indirectly referenced from required .class files / Unable to compile class for JSP 에러

1. 오류 발생

 

게시판을 만드는 실습을 진행 중이었다.

 

자바 빈즈 클래스 이름이 대문자 뿐이길래, (BBS.java)

표준에 맞추려고 Bbs.java 로 바꾸었다.

 

그런데, 문제가 발생했다.

 

방금까지 잘 실행되던, bbs.jsp 문서가 갑자기 컴파일이 안된다는 오류가 뜨는 것이다.

 

 

 

1. The type (package.class) cannot be resolved. It is indirectly referenced from required .class files

2. Unable to compile class for JSP 

 

 

 

스크린샷은 못 찍었지만, 대충 위의 오류가 핵심이다.

 

나는 저기서 (package.class) -> (bbs.Bbs) 형식의 오류코드가 생겼는데,

즉, 내가 이름을 바꾸었던 클래스 때문에

무언가 꼬여서 jsp문서가 컴파일이 되지 않는다는 소리였다.

 

인터넷에서 방법을 찾아봤지만,

자바 클래스를 관리하는 JRE가 설정이 안 되어 있어 컴파일이 안된다는 소리가 대부분이었다.

 

위와 같은 상황이라면, 모든 jsp 문서가 컴파일이 안되어야 하는데, 나머지는 실행이 되었단 말이다.

 

 

2. 증상 / 해결방안

 

  • 다른 문서는 모두 컴파일이 되는데 일부의 문서만 컴파일이 되지 않는다.
  • 에러 발생한다고 언급된 문서에서 특별히 코드상의 문제가 없다.

위와 같은 (나와 같은) 상황이면,

이런 식으로 해결이 될 수 있을 가능성이 있다.

 

 

에러 해결

 

 

Project -> Build Automatically 를 껐다가 킨 다음,

Project -> Clean 을 눌러준다.

 

그리고 실행하니 컴파일도 되었고, 실행도 잘 되었다.