이클립스 m2e로 maven war프로젝트를 개발할 때 해당 프로젝트가 다른 프로젝트에 의존성을 가지니 아래같은 에러가 났다.
그러면서 이대로 tomcat으로 디버깅 테스트를 하면 해당 프로젝트 클래스를 못 찾아서
java.lang.ClassNotFoundException 이 떨어진다.
거의 두시간 이상 삽질 끝에 해결책을 찾았다. http://stackoverflow.com/questions/6799135/maven-project-in-eclipse-deployment-assembly-fails-build 에 있는 내용을 참고해서 해당 프로젝트의 Deployment Assembly항목에 의존하는 프로젝트를 직접 등록하고 실행하면 된다.
=================
내용추가. 이렇게 한 번은 성공했는데 다음날 재시작 후에 다른 에러가 발생했다.
/.metadata/.plugins/org.eclipse.wst.server.core/tmp0/wtpwebapps/myproject does not exist or is not a readable directory.
라는 메시지와 함께 실행이 안 되었다.
내 경우는 위의 Deployment assembly에 설정한 의존 프로젝트 하나가 제대로 검출이 안 되는 것 때문이었다. 프로젝트 속성에서 해당 설정 부분을 가니 그 의존 프로젝트를 못 찾겠다는 메시지가 나와 있었고, 이것 때문에 빌드가 문제가 생기면서 톰캣 웹 앱 디렉토리에 파일들을 복사하는 것도 취소되었기 때문이다.
이렇게 프로젝트 파일이 복사가 안 되서 에러가 나는 원인은 여러 가지가 있는 것 같다. 위 사례는 그 중 한 가지이고 어떤 경우는 서버 프로젝트를 지원다 새로 만들던지, 아니면 그냥 이클립스만 재시작해도 문제가 해결되기도 한다. 어쨌든 뭔가 안 될 경우는 열심히 검색하고 검색에도 잘 안 나오는 것이라면 기록을 잘 해 두자.



최근 덧글