2013-06-03 5 views
0

maven 기반 스프링 MVC 프로젝트가 있습니다. 나는 나의 바람둥이 폴더에 사람들은 전쟁 파일 App1.war, App2.war 및 App3.war을 생성 복사를 시작할 수 있습니다 그 프로젝트를 빌드하고이intelliJ IDEA를 사용하여 여러 war 파일 배포

mvn package -Dbuild.name=App1 
mvn package -Dbuild.name=App2 
mvn package -Dbuild.name=App3 

처럼 수동 바람둥이를 통해 실행할 수 있습니다. 그것은 잘 작동합니다.

질문은 인텔리전트 IDEA를 사용하여 동일한 작업을 수행하는 방법입니까?

Maven 프로젝트 창을 사용하고 패키지 목표에 대한 사용자 정의 값을 생성하여 하나씩 war 파일을 생성했습니다. 대상 폴더에 .war 파일을 생성합니다. 하지만 intelliJ Tomcat에서 실행할 때 루트 "/"주소에서만 응용 프로그램을 실행합니다. 다른 주소

/App2 -> 404 
/App3 -> 404 

답변

1

를 들어 당신은 multiple artifacts이하게 IntelliJ IDEA에서 생성 및 배포에 대해 구성된 응용 프로그램 서버 실행/디버그 구성에서 동시에 서로 다른 상황에서 Deployment 탭을 가질 수 있습니다.

External source 탭에서 배포를 수행 할 수있는 구성이 있습니다. 여기에서 어떤 이유로 이슈를 사용하지 않으려는 경우 Maven에서 생성 한 전쟁의 위치를 ​​지정할 수 있습니다.

+0

-Dbuild.name 명령을 모두 하나로 결합하는 방법은 무엇입니까? 현재 하나의 명령을 실행하고 다음 명령으로 수정하고 있습니다. – coure2011

+0

Maven 프로젝트 도구 창에서 목표 컨텍스트 메뉴를 통해 Maven 목표에 대한 실행 구성을 생성 할 수 있습니다. 목표에 대한 매개 변수를 지정하십시오. 그런 다음 하나의 실행 구성을 'Before launch' 섹션의 다른 실행 구성에 의존하도록 설정할 수 있습니다. 이렇게하면 Maven 목표에 대해 단일 구성을 실행하면 다른 구성이 실행됩니다. – CrazyCoder

+0

대신 유물을 사용하는 것이 좋습니다. 이렇게하면 다른 컨텍스트에서 자동으로 빌드하고 배포 할 수 있습니다. – CrazyCoder

관련 문제