개발/JPA

[JPA] Eclipse에서 QueryDsl 설정하기

Jindory 2022. 5. 21. 00:00
반응형

안녕하세요. 개발자 Jindory입니다.

오늘은 Eclipse에서 QueryDsl Qclass를 설정하는 방법에 대해서 작성해보고자 합니다.

 

# 글 작성 이유

QuerDsl을 사용하려고 Qclass 셋팅을하려고 찾다보니, 대부분 IntelliJ의 설정 방법만 있어서(나는 Eclipse 사용하는데.....) Eclipse에서 Q class를 어떻게 설정하는지 기억하고자 다른 포스트 글을 참고하여 작성해 보려고 합니다.


build.gradle 수정

우선 queryDsl를 사용하기 위해서 그에 필요한 설정값만 아래와 같이 사용해 보도록 하겠습니다.

//querydsl 추가
buildscript {
   dependencies {
      classpath("gradle.plugin.com.ewerk.gradle.plugins:querydsl-plugin:1.0.10")
   }
}

plugins {
	...
	// Querydsl
	id "com.ewerk.gradle.plugins.querydsl" version "1.0.10"
}

...

apply plugin: "com.ewerk.gradle.plugins.querydsl"

configurations {
	compileOnly {
		extendsFrom annotationProcessor
	}
}

...

dependencies {
	...
	compileOnly 'org.projectlombok:lombok'
	annotationProcessor 'org.projectlombok:lombok'
	...

	// querydsl
	implementation 'com.querydsl:querydsl-jpa'
	implementation 'com.querydsl:querydsl-apt'
}

...

// querydsl 설정
def querydslDir = "src/main/generated/queryDsl"

querydsl {
	library = "com.querydsl:querydsl-apt"
	jpa = true
	querydslSourcesDir = querydslDir
}

sourceSets {
	main.java.srcDirs = ['src/main/java', querydslDir]
}

compileQuerydsl {
	options.annotationProcessorPath = configurations.querydsl
}

configurations {
	querydsl.extendsFrom compileClasspath
}

위 설정을 한 이후, 프로젝트에서 우 클릭 후 -> Gradle 선택 -> refresh Gradle project를 통해서 설정값을 다시 로딩했던것 같습니다.

build해서 Q class 생성 후 build path 설정

gradle의 셋팅한 이후에 셋팅값 기준으로 Q Class를 만들 수 있도록 build를 해줘야한다.

build하는 방법은 아래의 2가지가 있는데, 저는 1번이 다 실패를 해서 마지막 2번째로 Qclass를 생성했습니다.

# build 방법

Gradle Tasks build
Gradle Tasks탭에서 해당 프로젝트 선택 > build 우 클릭 Run Gradle Tasks
(Gradle Tasks 탭이 없는 경우)
상단 탭 Windows > Show View -> other > gradle검색 > Gradle Tasks

cmd 콘솔창으로 직접 build
Window+R(실행창 열기) > cmd 창 열기 > 자신의 프로젝트 경로로 이동 > gradlew build 실행

1. Gradle Tasks build 방법

만일 Gradle Tasks가 없다면 Window > Show View > other > gradle tasks를 검색하여 찾으면 된다.

Gradle Tasks에서 해당 프로젝트를 선택하고 build에서 우클릭 Run GradleTasks를 누르면 실행된다.

 

2. cmd 콘솔로 직접 build하기

window + R(실행창 실행)을 실행하여 cmd창을 연다.

cmd창에서 자신의 프로젝트의 경로로 이동한 후 gradlew build를 입력하면 build가 실행되는걸 확인할 수 있다.

 

# build Path 설정

프로젝트를 이클립스로 다시 열고나면 프로젝트에 마우스 우클릭을 해서 build Path -> Configure Build Path 창을 연다.

팝업창이 열리면, Java Build Path > Source 탭에 들어간 후 Add Folder를 클릭한다.

Source Folter를 선택하는 창에서 아까 build를 해서 생성한 Q class가 있는 폴더를 선택한다.

저는 위에 src/main/generated/queryDsl에 설정했기 때문에 아래와 같이 나오지만, 다른 경로로 설정하셨다면 설정하신 경로로 가서 생성된 queryDsl 파일을 찾아 설정하셔야 합니다.

위의 buildPath 설정을 모두 마치면 아래와 깉으 프로젝트에 Q Class가 있는 'src/main/generated/queryDsl' 폴더가 import된것을 볼 수 있습니다.

이제 Qclass를 어디에서든 import해서 사용할 수 있게 됩니다.


이렇게 Eclipse에서 QueryDSL Qclass를 설정하는 방법에 대해서 알아봤습니다.

 

혹시라도 정정할 내용이나 추가적으로 필요하신 정보가 있다면 댓글 남겨주시면 감사하겠습니다.

오늘도 Jindory 블로그에 방문해주셔서 감사합니다.

 

[ 참고 ]

https://pamyferret.tistory.com/11

https://kitty-geno.tistory.com/115

반응형