인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

eikhyeon.choi님의 프로필 이미지
eikhyeon.choi

작성한 질문수

실전! Querydsl

Querydsl 지원 클래스 직접 만들기

querydsl cannot find symbol

작성

·

816

0

현재 build.gradle 설정인데

어떻게 고치더라도 

cannot find symbol 에러가 발생합니다 

(Q파일이 생성이 안됩니다, 폴더까지 모두 생성이 안됩니다)

도움 부탁드립니다!

//querydsl 추가
buildscript {
ext {
queryDslVersion = "5.0.0"
}
}

plugins {
id 'org.springframework.boot' version '2.6.4'
id 'io.spring.dependency-management' version '1.0.11.RELEASE'

//querydsl 추가
id "com.ewerk.gradle.plugins.querydsl" version "1.0.10"

id 'java'
}

group = 'team'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '11'

repositories {
mavenCentral()
}

dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-validation'
implementation 'org.springframework.boot:spring-boot-starter-web'

//querydsl 추가
implementation "com.querydsl:querydsl-jpa:${queryDslVersion}"
annotationProcessor "com.querydsl:querydsl-apt:${queryDslVersion}"


implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.5.8'

// https://mvnrepository.com/artifact/org.springframework.boot/spring-boot-starter-security
implementation group: 'org.springframework.boot', name: 'spring-boot-starter-security', version: '2.6.3'

compileOnly 'org.projectlombok:lombok'
developmentOnly 'org.springframework.boot:spring-boot-devtools'
runtimeOnly 'com.h2database:h2'
runtimeOnly 'mysql:mysql-connector-java'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
}

tasks.named('test') {
useJUnitPlatform()
}

//querydsl 추가 시작
def querydslDir = "$buildDir/generated/querydsl"
querydsl {
jpa = true
querydslSourcesDir = querydslDir
}
sourceSets {
main.java.srcDir querydslDir
}
configurations {
compileOnly {
extendsFrom annotationProcessor
}

querydsl.extendsFrom compileClasspath
}
compileQuerydsl {
options.annotationProcessorPath = configurations.querydsl
}
//querydsl 추가 끝

답변 1

0

안녕하세요. eikhyeon.choi님, 공식 서포터즈 David입니다.

이전에는 정상적으로 동작했는데 안되시는걸까요?

강의자료 PDF 5p에 기재된 설정 내용 중 querydsl 추가 부분들만 동일하게 작성하셔서 진행해보시겠어요?

감사합니다.

eikhyeon.choi님의 프로필 이미지
eikhyeon.choi
질문자

네 갑자기 안되서 너무 황당해서 질문했습니다...

 Querydsl 5.0 이후 추가된

build.gradle과 동일하게 설정을 잡았습니다

혹시 구글 클라우드에 올리고 봐주실 수 있으신건가요??

이게 다른 연습용 프로젝트에 build.gradle이랑 똑같이 잡았는데

연습용 프로젝트에선 잘 작동되지만, 지금 올린 프로젝트에서는 작동이 안되더라구요...

 

네, 올려주시면 확인해볼게요.

eikhyeon.choi님의 프로필 이미지
eikhyeon.choi
질문자

올리는 방법과 주소를 알려주실 수 있으실까요??

아래 글 참고부탁드립니다.

 

전체 프로젝트를 압축해서 구글 드라이브로 공유해서 링크를 남겨주세요.
구글 드라이브 업로드 방법은 다음을 참고해주세요.

https://bit.ly/3fX6ygx

주의: 업로드시 권한 문제 꼭 확인해주세요

추가로 다음 내용도 코멘트 부탁드립니다.

1. 실행 방법을 알려주세요.
2. 어떻게 문제를 확인할 수 있는지 자세한 설명을 남겨주세요.

eikhyeon.choi님의 프로필 이미지
eikhyeon.choi
질문자

링크는 \

https://drive.google.com/file/d/1-eQJ0vtLLhbjvjKr_l-skylTqhAQ_4Eu/view?usp=sharing

입니다

querydsl 연습용 프로젝트를 하는데 예제와 다를 수 있지만 설정만 봐주시면 될것 같습니다!

일단 intellij ultimate를 사용중이구 

annotation processors 켜놨구요

build and run using은 intellij로 해놨습니다

감사합니다.

프로젝트 파일 그대로 실행했습니다.

정상적으로 생성되었네요.

인텔리제이 문제일 수도 있을 것 같은데

file - invalidate caches를 실행하신 뒤 다시 시도해보시겠어요?

eikhyeon.choi님의 프로필 이미지
eikhyeon.choi
질문자

하하...

이게 왜 문제가 발생했는지 모르겠네요...

cache도 초기화해보고 Restart IDE도 해보고 다 했는데

Help > Find Action > Reload All Gradle Projects

이거 실행하니깐 문제가 없어졌습니다...

도움주셔서 감사드립니다!

종종 꼬이면 그러더라고요. 해결하셨으니 다행입니다.

eikhyeon.choi님의 프로필 이미지
eikhyeon.choi

작성한 질문수

질문하기