CoDream

Maven¿ 메이븐 - 빌드 자동화 도구 본문

JAVA

Maven¿ 메이븐 - 빌드 자동화 도구

코잠 2024. 5. 19. 15:46
728x90
반응형

 

Maven

Apache Software Foundation에서 개발한 빌드 자동화 도구입니다.

특히 자바 프로젝트에서 널리 사용되며, 프로젝트의 빌드, 배포, 문서화 등을 관리할 수 있습니다.

Maven은 프로젝트의 의존성 관리와 빌드 프로세스를 자동화하는 데 유용합니다.

Maven의 주요 개념

POM (Project Object Model): pom.xml 파일로, 프로젝트의 설정과 의존성을 정의합니다.

Repository: Maven이 의존성을 다운로드하고 저장하는 곳입니다. 로컬 저장소와 원격 중앙 저장소가 있습니다.

Plugin: Maven의 기능을 확장하는 모듈입니다. 빌드, 테스트, 배포 등의 작업을 수행합니다.

Maven 설치 방법

Maven 다운로드 및 설치

Maven 공식 웹사이트에서 바이너리 파일을 다운로드합니다.

압축을 풀고, Maven을 설치할 디렉토리에 저장합니다.

 

환경 변수 설정:

MAVEN_HOME: Maven이 설치된 경로를 지정합니다.

PATH: MAVEN_HOME/bin 경로를 추가합니다.

 

//Windows
setx MAVEN_HOME "C:\path\to\apache-maven-3.x.y"
setx PATH "%PATH%;%MAVEN_HOME%\bin"

 

Maven 설치 확인

터미널 또는 명령 프롬프트에서 다음 명령을 실행하여 Maven이 제대로 설치되었는지 확인합니다:

mvn -version

Maven의 버전 정보가 출력되면 성공적으로 설치된 것입니다.

 


Maven 사용 방법

Maven 프로젝트 생성

mvn archetype:generate -DgroupId=com.kh.app -DartifactId=kakaopayTest -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

이 명령은 기본적인 웹 애플리케이션 구조를 가진 Maven 프로젝트를 생성합니다.

Maven을 사용하여 프로젝트를 생성하는 방법은 다음과 같습니다:

 

프로젝트 구조

생성된 프로젝트 폴더 구조

kakaopayTest
├── pom.xml
├── src
│   ├── main
│   │   ├── java
│   │   ├── resources
│   │   └── webapp
│   │       └── WEB-INF
│   │           └── web.xml
│   └── test
└── README.md

 

pom.xml 설정

pom.xml 파일에 프로젝트의 의존성을 추가합니다. 예를 들어, 서블릿 API를 추가하려면 다음과 같이 설정합니다:

<dependencies>
    <dependency>
        <groupId>javax.servlet</groupId>
        <artifactId>javax.servlet-api</artifactId>
        <version>4.0.1</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

 

프로젝트 빌드 및 실행

빌드: 다음 명령을 실행하여 프로젝트를 빌드합니다:

mvn clean package

 

WAR 파일 생성: target 폴더에 생성된 .war 파일을 확인합니다.

 

Tomcat에 배포

Tomcat의 webapps 폴더에 .war 파일을 복사합니다.

Tomcat을 시작하고 브라우저에서 애플리케이션을 확인합니다.

 

 


 

 

예제

위의 구조를 기반으로 한 간단한 예제 프로젝트를 생성하고 실행해보겠습니다.

프로젝트 생성

mvn archetype:generate -DgroupId=com.kh.app -DartifactId=kakaopayTest -DarchetypeArtifactId=maven-archetype-webapp -DinteractiveMode=false

 

pom.xml 설정

	4.0.0
    com.kh.app
    kakaopayTest
    1.0-SNAPSHOT
    war

            javax.servlet
            javax.servlet-api
            4.0.1
            provided
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.8.1
                
                    8
                    8

                org.apache.maven.plugins
                maven-war-plugin
                3.2.3

 

서블릿 클래스 작성

src/main/java/com/kh/app/kakaopayTest/KakaoPayServlet.java 파일을 생성하고 내용을 작성합니다.

 

web.xml 설정

src/main/webapp/WEB-INF/web.xml 파일을 생성하고 내용을 작성합니다.

 

JSP 파일 작성

src/main/webapp/WEB-INF/views/kakaopay/test.jsp 파일을 생성하고 내용을 작성합니다.

 

빌드 및 배포

mvn clean package

 

 

생성된 .war 파일을 Tomcat의 webapps 폴더에 복사합니다.

Tomcat을 시작하고 브라우저에서 http://localhost:8080/kakaopayTest로 접속합니다.

이 과정을 통해 톰캣을 사용하여 Maven 기반의 서블릿 프로젝트를 설정하고 실행할 수 있습니다.

 

 

 

 

 

 

 

 

 

 

728x90
반응형