작업13, 스프링부트, 원격배포 플러그인 적용(메이븐)
1. 빌드 (Build)
#1 빌드란?
- 우리가 작성한 소스코드(java)나, 프로젝트에서 쓰인 각각의 파일 및 자원 등(.xml, .jpg, .jar, .properties)을 JVM이나 톰캣같은 WAS가 인식할 수 있는 구조로 패키징 하는 과정 및 결과물이라고 할 수 있다.
#2 빌드 도구(Build tool)
- 빌드 도구란 프로젝트 생성, 테스트 빌드, 배포 등의 작업을 위한 전용 프로그램. (현재는 Maven과 Gradle이 많이 쓰인다.)
2. Maven
#1 정의 및 특징
- Maven은 자바용 프로젝트 관리도구로 프로젝트의 전체적인 라이프 사이클을 관리하는 도구 이며, 많은 편리함과 이점이 있어 널리 사용되고 있다.
- Maven은 필요한 라이브러리를 특정 문서(pom.xml)에 정의해 놓으면 내가 사용할 라이브러리 뿐만 아니라 해당 라이브러리가 작동하는데에 필요한 다른 라이브러리들까지 관리하여 네트워크를 통해서 자동으로 다운받아 준다.
- 자바 프로젝트에 빌드 툴을 maven으로 설정하면, 프로젝트 최상위 디렉토리에 "pom.xml"이라는 파일이 생성된다.
- pom.xml만 보면 프로젝트의 모든 설정, 의존성 등을 알 수 있다.
- Maven은 중앙 저장소를 통한 자동 의존성 관리를 중앙 저장소(아파치재단에서 운영 관리)는 라이브러리를 공유하는 파일 서버라고 볼 수 있고, 메이븐은 자기 회사만의 중앙 저장소를 구축할수도 있다.
- 간단한 설정을 통한 배포 관리가 가능 하다.
- 메이븐은 프레임워크이기 때문에 동작 방식이 정해져있고, 미리 정의하고 있는 빌드 순서가 있다. 이를 라이프사이클(Lifecycle)이라 한다.
- 정해진 라이프사이클에 의하여 작업 수행하며, 전반적인 프로젝트 관리 기능까지 포함.
작업13, 스프링부트, 원격배포 플러그인 적용 시작!!
파일질라 귀찮... 메이븐으로 원격배포하기 ! ! !
- 프로젝트의 pom.xml에 아래 플러그인 추가
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>http://service.myflex.kr:8080/manager/text</url> // 보내고 싶은 주소:8080~~
<server>myflex_kr_manager_text</server>
<path>/</path>
</configuration>
</plugin>
메이븐 원격 배포 방법
- 위 단계 후, (JAVA_HOME 환경변수가 이미 존재해야 한다.)
- 해당프로젝트 작업폴더에서 cmd 입력해서 실행
- cmd에 입력 ( 배포 ) : mvnw.cmd tomcat7:redeploy
이제 수정 후, cmd에서 mvnw.cmd tomcat7:redeploy만 해주면 서버에 적용이 된다.
(리로드 되는데 시간이 몇초 걸림)