ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [Spring Framework] 스프링과 메이븐
    백엔드/Spring 2020. 11. 10. 21:55

          로재의 개발 일기       

    스프링 그리고 메이븐

    스프링을 사용하기 위해서는 Maven Build가 필요합니다.

    자바 개발의 사실상의 표준 빌드 툴이며, 이전에는 ANT를 많이 사용했지만,

    최근에는 메이븐의 XML 설정파일을 사용하고 있습니다.

    - 더 나아가 최근, groovy 언어로 설정을 하는 gradle이 등장하게 되었다고 합니다. (다들 사용해 봤겠지만..)

    - Gradle이 특히 문제가 되었던 XML에 대한 이슈도 Groovy를 사용해 해결하였습니다.


    ※ ANT와 Maven은 상호보완이 불가능하며, Maven과 Gradle은 가능합니다


     메이븐의 특징

    - Convection over Configuration (COC)

    "설정보다는 관행에 따라 미리 정해진 설정으로 개발을 수행하자"  라는 뜻입니다.

    개발자 커뮤니티에서 자주 회자되는 설정 기법을 따라서, 메이븐이 설정을 해줍니다.

    (Node.js의 웹 프레임워크 Express, Configuration over Convention과 유사)



    - Java 기반 Web Application의 Best Practice를 따른다

    따라서 ~

    1. 개발 디렉토리 구조가 비슷합니다.

    2. 빌드 단계가 이미 설정되어 있습니다. (ANT기법과 상이함)


    - 의존성 관리를 자동으로 수행

    Maven 중앙 저장소 (Central Repository)를 제공하여, '자바 라이브러리'에 대한 생태계를 조성해줍니다.

    따라서, 빌드툴 뿐만이 아니라, 자바 라이브러리를 저장하고 있는 저장소이기도 합니다.

    (노드의 경우는 npm)


    - POM.xml 단일 설정 파일

    메이븐 프로젝트를 의미하여, 프로젝트의 루트에 존재합니다



     메이븐 설정 

    프로젝트 명

    - artifact ID 를 사용


    그룹 아이디

    - group ID ~> 프로젝트 패키지를 사용 (기관 도메인의 역순, kr.co.company)


    버전

    - 개발버전을 의미하는 SNAPSHOT 사용


    예시

    1
    2
    3
    4
    5
    <dependency>
        <groupId>org.springframework.security</groupId>
        <artifactId>spring-security-core</artifactId>
        <version>5.4.1</version>
    </dependency>
    cs




    마무리

    다음부터는 개인 프로젝트에는 Gradle를 사용해봐야겠다.



    ※ 본 글은 개인 포트폴리오 혹은 공부용으로 사용하기 때문에, 무단 복사 유포는 금지하지만, 개인 공부 용도로는 얼마든지 사용하셔도 좋습니다




    반응형
Designed by Tistory.