ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Lombok 환경 설정
    소프트웨어 개발 툴 2019. 2. 17. 16:51


    자바 개발자라면 늘 마주치는 재미없는 일이 있다. 바로 자파 파일 생성후 생성자 만들어주고 Getter, Setter만들어 주고 거기다가 Builder까지 만들어주는 아주 지루한 작업이 존재한다. 요즘은 IDE가 좋아 키보드 숏컷 몇번으로 모두 생성이 가능하지만 그래도 귀찮은 일이 아닐 수 없다. 이런 지루한 작업에서 우리를 벗어나게 해 줄 구원같은 라이브러리가 있으니 바로 Lombok이다. Lombok은 Annotation을 이용해 Getter, Setter, Builder등등을 만들어준다. 나도 Lombok이 어디까지 지원하는지 다 찾아보진 않았지만 기본적으로 Getter/Setter/Builder를 지원하고, Synchronized, Logger관련, JPA관련 어노테이션도 지원하는 것으로 알고 있다. 이 포스트를 통해 Lombok라이브러리를 사용하기 위한 준비작업을 해보자.

    예상독자

    이 포스트의 독자들은 중급 자바 프로그래머들이다. 자바 프로젝트를 몇 개 해봤고, 자바 IDE사용에 능숙하다. 이 포스트에서 사용되는 자바 프로젝트는 그래들 기반이므로 Gradle이 익숙하지 않은 독자들은 Gradle을 이용해 자바 프로젝트 만들기를 참고하길 바란다.

    목표

    • Lombok 라이브러리 그래들 프로젝트에 추가
    • 이클립스 Lombok 설치
    • IntelliJ Lombok 플러그인 설치
    • IntelliJ Annotation Processing 설정

    Lombok 라이브러리 그래들 프로젝트에 추가

    첫번째로 build.gradle에 lombok을 추가해야 한다. 그래들 lombok사이트에서 Gradle without a plugin을 참고하도록 하자. repositories와 dependencies에 lombok을 추가하자. 아래는 내 build.gradle전문이다. 프로젝트는 Gradle을 이용해 자바 프로젝트 만들기에 생성한 프로젝트를 사용했다. 

    /*
    * This file was generated by the Gradle 'init' task.
    *
    * This generated file contains a sample Java project to get you started.
    * For more details take a look at the Java Quickstart chapter in the Gradle
    * User Manual available at https://docs.gradle.org/5.2.1/userguide/tutorial_java_projects.html
    */

    plugins {
    // Apply the java plugin to add support for Java
    id 'java'

    // Apply the application plugin to add support for building an application
    id 'application'
    }

    repositories {
    // Use jcenter for resolving your dependencies.
    // You can declare any Maven/Ivy/file repository here.
    jcenter()

    // lombok을 위해 추가!!!!!
    mavenCentral()
    }

    dependencies {
    // This dependency is found on compile classpath of this component and consumers.
    implementation 'com.google.guava:guava:27.0.1-jre'

    // Use JUnit test framework
    testImplementation 'junit:junit:4.12'

    // lombok을 위해 추가!!!!!
    compileOnly 'org.projectlombok:lombok:1.18.6'
    annotationProcessor 'org.projectlombok:lombok:1.18.6'
    }

    // Define the main class for the application
    mainClassName = 'myFirstGradleProject.App'

    여기까지 하면 gradle clean build으로는 lombok 어노테이션을 컴파일 할 수 있지만 IDE에서는 할 수 없다. 따라서 IDE에 플러그인을 설치해야 한다.

    이클립스 Lombok 설치

    1. 우선 메이븐 리파지토리에 가서 원하는 프로젝트에서 이용할 버전의 jar를 받아온다. 이 포스트에서는 1.18.6을 사용하고 있으니 1.18.6리파지토리로 가서 Files란에 있는 jar를 누르면 jar 파일이 다운로드된다.

    2. cmd또는 터미널을 켜 jar파일이 다운로드된 디렉토리로 이동한다.

    3. 다음 명령어로 lombok을 설치한다.

    java -jar lombok-1.18.6.jar

    그러면 lombok 설치화면이 나올 것이다. 거기서 IDEs라고 IDE를 추가하는 화면이 나오면 그곳에 Eclipse(C://path/eclipse.exe)의 경로를 추가하라.


    이클립스를 재시작하면 Lombok을 사용 할 수 있다.

    IntelliJ Lombok 플러그인 설치

    IntelliJ Annotation Processing 설정

    인텔리제이의 경우 플러그인 설치가 간편한 반면에 Annotation Processing을 설정 해 줘야 한다는 점이 있다.

    Preference > Annotation Processors > Enable Annotation processing에 체크하고 OK를 눌러 닫자.


    추가를 했으면 빌드를 해 보자. gradle clean build를 하던지 IDE를 이용해 Build Project 해라.

    gradle clean build

    BUILD SUCCESSFUL in 2s
    8 actionable tasks: 8 executed

     Lombok 사용하는 포스트를 적으려고 했다가 설치하는데 시간을 너무 많이 보냈다... 다음 포스트에서는 Lombok을 제대로 사용하는 방법에 대해 알아 보도록 한다.


    다음 글 : Lombok을 이용해 Constructor/Getter/Setter/Builder에서 벗어나는법


    댓글

f.software engineer @ All Right Reserved