2017-02-22 12 views
0

나는 나의 전쟁 응용 프로그램을 시작 받는다는 부두 플러그인을 구성하려고 해요,하지만 같은 후속 설명과 같은 합병증이 있습니다공유 클래스 로더는

1º를 - 그것은 EJB 항아리와 종속성이 있습니다; 2º - 전쟁과 관련이 있습니다 (tag jstl : import context = "nscl"); 3º - 전쟁 간의 클래스 로더를 공유해야합니다.

그래서 세 번째 문제를 해결하려면 도움이 필요합니다. pom.xml 파일 내 부두 플러그인 구성을 보이는 :

 <plugin> 
      <groupId>org.eclipse.jetty</groupId> 
      <artifactId>jetty-maven-plugin</artifactId> 
      <version>9.4.1.v20170120</version> 
      <configuration> 
       <useProvidedScope>true</useProvidedScope> 
       <useTestScope>true</useTestScope> 
       <webApp> 
        <contextPath>/nscl/cntr</contextPath> 
       </webApp> 
       <contextHandlers> 
        <contextHandler implementation="org.eclipse.jetty.maven.plugin.JettyWebAppContext"> 
         <war>${contexto.war.path}</war> 
         <contextPath>/nscl</contextPath> 
        </contextHandler> 
       </contextHandlers> 
       <systemProperties> 
        <systemProperty> 
         <name>spring.profiles.active</name> 
         <value>test</value> 
        </systemProperty> 
       </systemProperties> 
      </configuration> 
     </plugin> 

부두가, 내가 먼저 전쟁을 시작하는 데 사용되는 클래스를 말하는 문제점을받지에 존재 (= NSCL 컨텍스트 경로) 두 번째 전쟁을 시작할 때 문제가된다 둘째, 샘플은 스프링 프레임 워크의 클래스입니다.

감사합니다 !!!!

답변

0

표준 서블릿 스펙 동작을 수행하고 있습니다.

웹 애플리케이션이 동일한 ClassLoader를 공유 할 수 없습니다.

Servlet Spec WebApp 인 ClassLoader 격리의 기본 부분입니다. 단지 신비 클래스 로더 계층 구조 문제 (InvalidClassChange 오류, 메모리 누수, GC 장애 등)

을 만듭니다 강제로 시도

아마도 당신이 세부 할 수있는 이유 당신은 당신이 필요가 있다고 생각합니다.

서블릿 스펙의 기능을 사용하여이를 수행하고 (싸우지 않은) 이미 표준 방법이 가능할 수 있습니다.