2014-05-14 3 views
2

Maven 3.2.1이클립스 케플러을 사용 중입니다. 일부 JSP를 포함하는 다른 구성 요소에 대한 종속성이있는 동적 웹 프로젝트가 있습니다. 이제 종속성의 JSP가 동적 웹 프로젝트의 웹 루트의 일부가되기를 바랍니다. 나는 maven-dependency-plugin 목표를 풀어 이것을 사용하기로 결정했습니다.maven-dependency-plugin을 사용하여 강제로 압축을 푸십시오.

JAR을 /target/m2e-wtp/web-resources에 압축을 풀기 위해 플러그인 정의를 추가했습니다. Unfortunatley Eclipse는 때때로이 폴더를 지우고 JSP는 사라졌습니다. 다시 압축을 풀려면 target/dependency-maven-plugin-markers 폴더를 삭제해야합니다. 그렇지 않으면 플러그인이 파일을 다시 압축 해제하지 않습니다.

압축을 풀고 플러그인 마커를 무시할 수 있습니까?

동적 웹 프로젝트에 대한 종속성으로부터 웹 리소스를 얻는 더 좋은 방법이 있습니까?

답변

1

예 거기에 더 좋은 방법은, 그러나 그것은

이 받는다는 - 종속성 플러그인 구성을 제거하고 전쟁 오버레이로 의존성을 대신 추가 기능 (또는 웹 로직의 동등한 것) "게시하지 않고 모듈을 제공"Tomcat의 호환이 아니다 . 의존성이 전쟁이라면 자동으로 오버레이로 인식됩니다 (http://maven.apache.org/plugins/maven-war-plugin/overlays.html). zip 또는 jar 인 경우 특정 구성을 Maven-War-Plugin 정의에 추가해야합니다. 배포하기 전에 자원이 대상/m2e-WTP/오버레이/바 version.jar에서 압축 해제됩니다/다음 응용 프로그램 서버

+0

흠에 배치

<plugin> <artifactId>maven-war-plugin</artifactId> <version>2.4</version> <configuration> <overlays> <overlay> <!-- /!\ must also be added as a project dependency--> <groupId>foo</groupId> <artifactId>bar</artifactId> <type>jar</type> <targetPath>relative/path/to/contextroot</targetPath> </overlay> </overlays> </configuration> </plugin> 

: 함께 뭔가. 실제로 작동하지 않습니다. 오버레이를 설정하지 않고도 Eclipse에 대한 의존성을 'target/m2e-wtp/overlays'에 넣을 수 있습니다. 그러나 Weblogic 서버에서 웹 프로젝트를 시작할 때 이러한 파일 (필자의 경우 JSP)을 찾을 수 없습니다. – schoenk

+0

폭발 아카이브로 배포하려고 시도했을 수 있습니다. Weblogic은 웹 애플리케이션을 현장에서 처리 할 때 여러 웹 자원 폴더를 잘 처리하지 못하는 것 같습니다. http://stackoverflow.com/questions/21124864/m2e-wtp-overlay-not-loading-into-eclipse-published-ear-or-war-files/21169684#21169684 –

+0

을 참조하십시오. 그렇다면 Hot-Swap 및 디버깅 기능, 그렇지 않습니까? – schoenk

관련 문제