2011-09-28 4 views
0

죄송합니다.이 스택 오버플로에 익숙하지 않으므로 긴 오류 메시지가 맨 아래에 표시됩니다.ClassNotFound 이클립스를 사용하는 스프링 Tomcat Maven M2Eclipse

Eclipse를 사용하여 Tomcat 7 서버에 BroadLeaf라는 프로젝트를 배포하려고합니다. M2Eclipse/WTP 통합을 설치했습니다. 목표로 깨끗한 패키지를 사용하여 maven 구성 (eclipse를 통해)을 실행합니다. 그런 다음 새로 고침을 실행하고 서버를 시작하려고 시도하지만 실패합니다. 내가 여기에있는 프로젝트를 배포하려고 ... https://broadleaf.svn.sourceforge.net/svnroot/broadleaf/trunk/BroadleafCommerce/site/BroadleafCommerceDemo/pom.xml

어떤 아이디어 :

UPDATE?

java.lang.ClassNotFoundException가 : org.springframework.web.util.Log4jConfigListener org.apache.catalina.loader.WebappClassLoader.loadClass (WebappClassLoader.java:1664) 에서 org.apache.catalina.loader에서 .WebappClassLoader.loadClass (WebappClassLoader.java:1509) at org.apache.catalina.core.DefaultInstanceManager.loadClass (DefaultInstanceManager.java:406) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged (DefaultInstanceManager.java:388)) at org.apache.catalina.core.DefaultInstanceManager.newInstance (DefaultInstanceManager.java:117) at org.apache.catalina.core.StandardContext.listenerSt art (StandardContext.java:4268) at org.apache.catalina.core.StandardContext.startInternal (StandardContext.java:4771) at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.util.LifecycleBase의 에서 org.apache.catalina.core.ContainerBase.startInternal start (LifecycleBase.java:138) at org.apache.catalina.core.ContainerBase.startInternal (ContainerBase.java:990) at org.apache.catalina.core.StandardEngine.startInternal (StandardEngine.java:275) at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.core.StandardServic e.startInternal (StandardService.java:424) at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.core.StandardServer.startInternal (StandardServer.java:648) at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.startup.Catalina.start (Catalina.java:576) at sun.reflect.NativeMethodAccessorImpl.invoke0 (기본 방법) sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39에서 ) java.lang.reflect.Method.invoke에서 sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) (Method.java에서 : 597) at org.apache.catalina.startup.Bootstrap.start (Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:415) 2011 년 9 월 27 일 8:41:12 PM org.apache.catalina.core.StandardContext listenerStart SEVERE : 클래스의 응용 프로그램 수신기 구성 오류 org.broadleafcommerce.profile.web.extensibility.MergeContextLoaderListener java.lang.ClassNotFoundException가 : org.apache.catalina.loader.WebappClassLoader.loadClass에서 org.broadleafcommerce.profile.web.extensibility.MergeContextLoaderListener (WebappClassLoader.java:1664) org.apache.catalina.loader.WebappClassLoader.loadClass (WebappClassLoader.java:1509) at org.apache.catalina.core.DefaultInstanceManager.loadClass (DefaultInstanceManager.java:406) at org.apache.catalina.core.DefaultInstanceManager .loadClassMaybePrivileged (DefaultInst anceManager.java : 388) at org.apache.catalina.core.DefaultInstanceManager.newInstance (DefaultInstanceManager.java:117) at org.apache.catalina.core.StandardContext.listenerStart (StandardContext.java:4268) at org.apache. org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) 에서에서 org.apache.catalina.core.ContainerBase.startInternal (ContainerBase. java : 990) at org.apache.catalina.core.StandardHost.startInternal (StandardHost.java:772) at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache. catalina.core.ContainerBase.startInternal (ContainerBase.java:990) at org.apache.catalina.core.Standard Engine.startInternal (StandardEngine.java:275) at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.core.StandardService.startInternal (StandardService.java:424) at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.core.StandardServer.startInternal (StandardServer.java:648) at org.apache.catalina.util. sun.reflect.NativeMethodAccessorImpl에서 sun.reflect.NativeMethodAccessorImpl.invoke0 (기본 방법) 에서 org.apache.catalina.startup.Catalina.start (Catalina.java:576) 에서 LifecycleBase.start (LifecycleBase.java:138) .invoke (NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke (Delega tingMethodAccessorImpl.java:25) at java.lang.reflect.Method.invoke (Method.java:597) at org.apache.catalina.startup.Bootstrap.start (Bootstrap.java:288) at org.apache. catalina.startup.Bootstrap.main (Bootstrap.java:415) 2011 년 9 월 27 일 8:41:12 PM org.apache.catalina.core.StandardContext listenerStart SEVERE : org.springframework.security 클래스의 응용 프로그램 수신기를 구성하는 동안 오류가 발생했습니다. web.session.HttpSessionEventPublisher java.lang.ClassNotFoundException가 : org.springframework.security.web.session.HttpSessionEventPublisher org.apache.catalina에서 org.apache.catalina.loader.WebappClassLoader.loadClass (WebappClassLoader.java:1664)에서 .loader.WebappClassLoader.loadClass (WebappClassLoader.java:1509) at org.apache.catalina.core.DefaultInstanceManager.loadClass (DefaultInstanceManager.java:406) at org.apache.catalina.core.DefaultInstanceManager.loadClassMaybePrivileged (DefaultInstanceManager.java:388) at org.apache.catalina.core.DefaultInstanceManager. org.apache.catalina.core.StandardContext.startInternal (StandardContext.java:4771) 에서 org.apache.catalina.core.StandardContext.listenerStart (StandardContext.java:4268) 에서 newInstance와 (DefaultInstanceManager.java:117) 에서 org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.core.ContainerBase.startInternal (ContainerBase.java:990) at org.apache.catalina.core.StandardHost. startInternal (StandardHost.java:772) at org.apache.catalina.util.Life cycleBase.start (LifecycleBase.java:138) at org.apache.catalina.core.ContainerBase.startInternal (ContainerBase.java:990) at org.apache.catalina.core.StandardEngine.startInternal (StandardEngine.java:275) at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.core.StandardService.startInternal (StandardService.java:424) at org.apache.catalina.util. LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.core.StandardServer.startInternal (StandardServer.java:648) at org.apache.catalina.util.LifecycleBase.start (LifecycleBase.java:138) at org.apache.catalina.startup.Catalina.start (Catalina.java:576) at sun.reflect.NativeMethodAccessorImpl.java.lang.reflect.Method.invoke에서 sun.reflect.DelegatingMethodAccessorImpl.invoke (DelegatingMethodAccessorImpl.java:25) 에서 sun.reflect.NativeMethodAccessorImpl.invoke (NativeMethodAccessorImpl.java:39) 에서 invoke0 (기본 방법) (방법 .java : 597) at org.apache.catalina.startup.Bootstrap.start (Bootstrap.java:288) at org.apache.catalina.startup.Bootstrap.main (Bootstrap.java:415) 2011 년 9 월 27 일 8:41:12 PM org.apache.catalina.core.StandardContext listenerStart SEVERE : 이전 오류로 인해 응용 프로그램 수신기 설치를 건너 뛰었습니다. 2011 년 9 월 27 일 8:41:12 PM org.apache.catalina.core.StandardContext startInternal 심각 : 오류 listenerStart 2011 년 9 월 27 일 8:41:12 PM org .apache.catalina.core.StandardContext startInternal SEVERE : 문맥 [/ 잎이 넓은] 시작이 때문에 잎이 넓은 source repository의 치어 파일을 보면 이전 오류
+0

모든 jar 파일에 org.springframework.web.util.Log4jConfigListener가 있는지 확인할 수 있습니까? 이것은 XML 파일에 지정됩니다. 따라서 클래스가 누락 된 경우에도 컴파일러 오류가 발생하지 않습니다. – gkamal

+0

좋은 질문입니다. 의존성은 Maven에 의해 잡혀서 ./target/ /WEB-INF/lib 폴더에 추가되었습니다. 이것은 그것이 생성되면 모두 거기에 있음을 의미합니다. 나는 WTP에 대한 m2Eclipse 확장이이 폴더를 가리 키도록 처리해야한다고 생각하지만, 작동하지 않거나 어딘가에 설정이 누락되었습니다. – Jackie

+0

이 게시물은 Broadleaf Commerce가 GitHub로 이동했기 때문에 사람들에게 알리 길 원합니다. 문서는 프로젝트 웹 사이트 (http://www.broadleafcommerce.org)에서 사용할 수 있습니다. – polster

답변

1

문제는 WTP가 maven 의존성과 제대로 통합되지 않는 것으로 보입니다. 아니 최고의 솔루션 난 지금

  • 가 클릭
  • 선택 자바 경로 항목을 빌드 추가 프로젝트를 클릭
  • 이동 배치 어셈블리에 대한 속성으로 이동하여 .... 이클립스

    1. 문제를 해결
    2. 모든 M2_HOME 항목을 선택하십시오.
    3. 깨끗한 빌드 및 배포 프로젝트 M2LCLIPSE 플러그를 ECLIPSE와 함께 사용하지 마십시오 : ECLIPSE!
    4. 오류가 발생합니다.

    누구나 진짜 해결책을 알고 계십니까?

    업데이트 : 또한 다음 번에 WTP를 가져 오면 Maven과 비슷한 느낌이 들었으므로 플러그인을 설치 한 후 프로젝트를 삭제하고 다시 가져올 수 있습니까?

  • 0

    에 실패, 그것은 (그들 중 누구도 web 응용 프로그램을 빌드처럼 war 보이는 인공물). m2eclipse/wtp 통합이 제대로 작동하려면이 작업이 필요합니다.

    그렇지 않은 경우 tomcat에 배포하려는 특정 broadleaf 하위 프로젝트를 지정하여 질문을 편집하십시오.

    +0

    당신은 내가 그것을 확인조차하지 못했다는 것을 알았습니다. 그래서 나는 약간의 인터넷 검색을 할 것이지만 이것은 메이븐 - 전쟁 플러그인 일 것입니다. – Jackie

    +0

    Broadleaf에서 경험 한 것처럼 들리므로 데모 사이트를 배포해야한다고 가정 할 때 맞습니까? 나는 ant ant jetty-demo (또는 그와 같은 것)를 통해 작업 할 수 있지만 Tomcat 서버에 배포하려고하고 있으며 mvn clean package 명령에 의해 생성 된 전쟁을 사용할 수 있다고 가정했습니다. 런처 프로젝트를 대신 사용해야합니까? – Jackie

    +0

    그냥 확인하고 전쟁을 구축하지 않습니다 ... 원래 보낸 pom은 루트 pom, 프로젝트에 대한 하나는 여기에서 사용할 수 있습니다 ... https : //broadleaf.svn.sourceforge.net/svnroot/broadleaf/trunk /BroadleafCommerce/site/BroadleafCommerceDemo/pom.xml – Jackie