2013-03-20 1 views
4

그래서 netbeans를 사용하여 내 maven 프로젝트에서 작동하도록 최신 배포를 시도하고 있습니다. 나는 두 가지 전쟁 패키지를 가지고있다. 하나는 "web"이라고하고 다른 하나는 "custom-web"이라고 부릅니다. 필자는 "web"위에 "custom-web"라는 오버레이를 추가했다. 나는 각 고객을 위해 하나씩 여러 개의 "custom-web"프로젝트를 가지고있다. 그래서 maven 오버레이는 내 요구에 잘 맞았습니다.Maven 오버레이로 핫 전개

문제는 두 프로젝트 모두에서 클래스 및 정적 파일 (.js, .css)의 신속한 배포를 원하는 것입니다. 하지만 hot-deployment는 "custom-web"프로젝트에서만 작동합니다. "web"클래스 나 정적 파일을 수정하면 수동으로 "web"를 재 작성하지 않고 변경 사항을 서버에 반영하지 않고 전체를 재배포합니다 3 분에서 5 분 정도 걸리므로 개발이 심각하게 방해됩니다.

"저장시 배포"옵션이있는 Netbeans과 디버그 모드에서 "코드 변경 적용"옵션을 사용하고 있습니다. 둘 다 "웹"파일/클래스에서 작동하지 않습니다.

해결책을 찾고 있습니다. 내 맞춤 웹 프로젝트는 주로 정적 파일을 갖지만 수업도 가질 수 있습니다. 오버레이를 반드시 사용할 필요는 없지만 오버레이를 사용하지 않고 두 프로젝트를 제대로 추가하는 다른 방법을 찾아 낼 수는 없습니다.

+0

좋은 질문입니다. 이것은 'web'과 'web-overlay'프로젝트가 모두 열려 있고 STS 내의 Tomcat 또는 tcServer를 사용하여 webapp를 실행중인 Windows7에서 STS 2.9+를 사용할 때 나에게 즉시 사용 가능합니다. 나는 오버레이 마술을하는 WTP 이클립스 플러그인이라고 생각한다. 그러나 LinuxMint에서 정확히 동일한 설정은 작동하지 않습니다 (오버레이를 수행하지 않습니다). – sbk

+0

@sbk 나는 glassfish와 함께 netbeans를 사용하고 있습니다. 나는 변화하는 서버에 열려 있지만 ide는 아닙니다. – Hoffmann

+0

공정한 호출. 그냥 나를 위해 일한 말. – sbk

답변

1

이 옵션이 있는지 여부는 확실하지 않지만이 경우 부두를 사용하면 좋습니다. jetty:run 목표를 사용하면 Jetty가 소스 디렉토리를 (프로젝트 전체에서) 볼 수 있도록 지정할 수 있으며, Jetty는 항상 거기에서 파일을 제공합니다.

귀하의 경우, 귀하의 소스 디렉토리에 Jetty의 scanTargets을 입력하면 Jetty가 거기에서 파일을 제공합니다.

구성 옵션 및 예제는 http://www.eclipse.org/jetty/documentation/current/jetty-maven-plugin.html#jetty-run-goal을 참조하십시오.

+0

소리가 재미 있습니다, 나는 그것을 시도 할 것입니다. Jetty는 부두에서 어떻게 지원됩니까? 나는 많은 j2ee 항목 (ejbs, managed beans, jsf 등)을 사용하고있다. – Hoffmann

+0

나는 Jetty에서 그 중 일부를 사용했다. JSF,하지만 거기에 EJB를 배포하려고하지 않았습니다. – nwinkler

+1

다음은 EJB 용 Jetty를 기반으로 Geronimo를 실행하는 다른 질문에 대한 링크입니다. http://stackoverflow.com/a/9024108/1228454 – nwinkler

0

메이븐 프로필 (http://maven.apache.org/guides/introduction/introduction-to-profiles.html)이 해결책 일 수 있습니다. dev 구성 및 "deploy on save"항목이있는 "웹"프로젝트로 "dev"파일을 만들 수 있습니다.

넷빈즈에서는 프로파일 구성을 매핑 할 수 있습니다 : http://wiki.netbeans.org/MavenBestPractices#Configurations

마지막으로 사용자 정의 프로젝트와 CI 서버의 오버레이 옵션을 사용합니다.