2013-09-22 5 views
6

저는 Spring MVC, Hibernate, MySQL, Maven 및 Tomcat을 사용하여 작은 MVC 프로젝트를 개발했습니다. 응용 프로그램을 (로컬에서) 원활하게 실행하고 테스트 할 수 있습니다.Spring MVC 프로젝트 배포

이제 Tomcat 만 설치된 (온라인) 서버에이 프로젝트를 게시/배포해야합니다. 온라인으로 프로젝트를 게시/배포하려면 어떻게해야합니까? 내가해야 할 특별한 건축물이 있습니까? 어떤 파일을 업로드해야합니까?

답변

6

입니다. 개발 옵션에는 몇 가지 유형이 있습니다.

로컬 호스트에서의 개발 EAR (Exploded ARchive) 유형의 프로젝트가 일반적으로 사용됩니다 (servery에서 쉽게 배포 할 수 있기 때문에). 그러나 제작 WAR (Web ARchive)가 사용됩니다 (기본적으로 동일한 EAR 아카이브이지만 ZIP 알고리즘을 사용하여 압축 됨).

프로젝트를 원격 Tomcat 서버에 배포하려면 프로젝트를 WAR 아카이브로 만들고 Tomcat의 webapps 디렉토리에 업로드하십시오. 그런 다음 Tomcat을 재시작해야 할 수도 있습니다. 그러나 수동 배포 방법입니다.

더 나은 옵션은 자동화 된 빌드 도구를 사용하는 것입니다 (같은 Maven) 등 (로컬 또는 원격)

이 하나를 웹 서버에 배포, 프로젝트 실행 단위 테스트를 컴파일하는 방법에 대한 좋은 예이다 일반적으로 여러 가지 이유로 오류를 가져, deploy 명령을 받는다는으로)

0

mvn 새로 설치를 수행하면 웹 모듈의 대상 디렉토리에 .war 파일이 생성됩니다. 복사하여 tomcat_home/webapps 디렉토리에 붙여 넣은 다음 Tomcat을 다시 시작하십시오. 그게 전부 야. 이제 구성된 포트 (예 : http://localhost:8080/<your webapp war name>)에서 액세스 할 수 있습니다. 전쟁 이름이 myapp.war라고 말하면, tomcat이 webapps의 myapp 폴더로 압축을 풀었을 것입니다. 귀하의 URL은 http://localhost:8080/myapp

+0

왜'MVN에게 깨끗한 패키지를하지 '대신'install'을 사용합니까? – Bart

+0

패키지 단계가 설치에 포함되어 있기 때문에 완료 될 수 있습니다. 나는 그 둘 모두가 작동 할 것이라고 말했습니다. – vigneshre

+0

'install'은 더 많은 응용 프로그램을 패키징하므로 ​​선호되는 방법이 아닙니다. 종속성으로이 웹 응용 프로그램을 다른 프로젝트에 포함시킬 수 없으면 않는 한. – Bart

0

, http://www.mkyong.com/maven/how-to-deploy-maven-based-war-file-to-tomcat/

행운을 빕니다 : Maven의 바람둥이 - 받는다는 - 플러그인을 사용하여 Tomcat 서버에 프로젝트를 배포합니다. Unix/Linux 시스템에서 작업하는 경우 콘솔에서 "rsync"방법을 사용하는 것이 좋습니다. (자신 만의 쉘 스크립트를 작성하여 쉽게 관리 할 수 ​​있습니다). 문제없이 배포 할 수있을뿐 아니라 재배포하는 동안 시간을 ​​확보하는 데 도움이됩니다 (변경된/새 파일 만 업로드). maven deploy/redeploy는 프로젝트를 jar/war에 번들로 업로드하기 때문에. 그러나 "rysnc"메서드는 프로젝트 파일을 하나씩 업로드합니다.

사용하기 전에 두 가지 조건이 충족되어야합니다.

1 프로젝트 대상 폴더에 내장되어 있습니다 (봄 도구 스위트)

2 SSH를 통해 바람둥이에 액세스 할 수

예제 코드 :(V_ : 사용자 정의 변수 접두사 ())

rsync -avz v_your_project_in_target [email protected]_ip:v_tomcat_name/webapps/v_project_name 
둘째 공유

()