2017-02-23 11 views
0

웹 프로젝트 web과 자바 프로젝트 common이 있습니다.MyEclipse가 WEB-INF/classes에 링크 소스를 배포하지 않습니다.

common의 원본 폴더를 web의 링크 소스로 설정하고 commonweb 프로젝트에 오류없이 사용했습니다.

그러나 바람둥이에 web을 배포하면 항상 NoClassDefFoundError 예외가 발생합니다. common의 일부 수업을 찾을 수 없습니다. 배포 된 파일을 검사 할 때 WEB-INF/classesweb의 클래스 만 있습니다. 그러나 commonweb의 클래스는 모두 Java 빌드 경로에 설정된 기본 출력 폴더 (web/target/classes)로 컴파일됩니다. 모든 클래스를 WEB-INF/classes에 복사하면 모든 것이 작동합니다.

배포 어셈블리 설정을 확인했지만 이미 맞습니다. /common (common) 및 /src (web)은 모두 WEB-INF/classes 배포 경로로 설정됩니다.

MyEclipse 10 및 tomcat 7.0을 사용하고 있습니다. 이 문제를 어떻게 해결할 수 있습니까? 미리 감사드립니다.

+0

'common'의 출력을 실제로'common'에 머물도록 시도해 보았습니까? 그리고 스스로 출력을 연결하려고 시도하지 않았습니까? 배포 어셈블리가 이미 준비되어있을 때 출력 디렉터리를 결합했습니다. – nitind

+0

@nitind 답장을 보내 주셔서 감사 합니다만 "링크 소스"를 사용하는 경우 AFAIK는 모든 소스 파일이 하나의 프로젝트에서와 같이 모두 함께 컴파일됩니다. 따라서 클래스는 마침내 동일한 출력 경로에 있어야합니다. 어쩌면 내가 너의 요점을 모르겠다. – Ulysses

답변

0

아직도 이유를 모르지만 다른 계획으로 전환하여 common을 maven 패키지로 만들었습니다. maven을 통해 종속성으로 web으로 가져 왔습니다. 이제 작동합니다.