작성자 없음
작성자 정보가 삭제된 글입니다.
작성
·
2.5K
·
수정됨
1
안녕하세요
현재 프로젝트 세팅부터 막혀서 질문 드립니다.
질문은 크게 3가지입니다.
build 잘됨
Gradle Tasks other compileQuerydsl -> 없음
( spring boot3이상으로 되면서 안보이는게 맞나요)?
build.gradle
plugins {
id 'java'
id 'org.springframework.boot' version '3.2.0'
id 'io.spring.dependency-management' version '1.1.4'
}
group = 'study'
version = '0.0.1-SNAPSHOT'
sourceCompatibility = '17'
configurations {
compileOnly {
extendsFrom annotationProcessor
}
}
repositories {
mavenCentral()
}
dependencies {
implementation 'org.springframework.boot:spring-boot-starter-data-jpa'
implementation 'org.springframework.boot:spring-boot-starter-web'
implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.0'
compileOnly 'org.projectlombok:lombok'
runtimeOnly 'com.h2database:h2'
annotationProcessor 'org.projectlombok:lombok'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
//test 롬복 사용
testCompileOnly 'org.projectlombok:lombok'
testAnnotationProcessor 'org.projectlombok:lombok'
//Querydsl 추가
implementation 'com.querydsl:querydsl-jpa:5.0.0:jakarta'
annotationProcessor "com.querydsl:querydsl-apt:${dependencyManagement.importedProperties['querydsl.version']}:jakarta"
annotationProcessor "jakarta.annotation:jakarta.annotation-api"
annotationProcessor "jakarta.persistence:jakarta.persistence-api"
}
tasks.named('test') {
useJUnitPlatform()
}
def querydslSrcDir = 'src/main/generated'
clean {
delete file(querydslSrcDir)
}
tasks.withType(JavaCompile) {
options.generatedSourceOutputDirectory = file(querydslSrcDir)
}
https://docs.google.com/document/d/1j0jcJ9EoXMGzwAA2H0b9TOvRtpwlxI5Dtn3sRtuXQas/edit
위의 docs 설정만 build.gradle에 기입하면 src/main/generated가 생성이 안되는데 이유가 뭔가용??
build폴더 말고, main/generated폴더에 Q파일이 생성되었는데 잘못 생성된건가요.?
답변 주시면 감사하겠습니다..
추가로,, 현재 build.gradle에
$buildDir은 사용이 안된다고 하네요..!
답변 3
3
제가 해결(?) 해본 방법을 공유해보겠습니다. 이렇게도 해보고, 저렇게도 해보면서 하나하나 해보다 발견된거라 깊게 이해하진 못합니다.
하지만, 다른분들 문제해결에는 도움이 되길 바라며 글을 남깁니다
compileQuerydsl -> 없는 문제
- 이건 id "com.ewerk.gradle.plugins.querydsl" version "1.0.10"
plugins에 추가해주어야 Tasks other compileQuerydsl 컴파일에 추가가 됩니다.
- 하지만, Tasks other compileQuerydsl 컴파일설정이 되어있지않기에 실행하면 에러가 나기에, 이미 영한님이 올려주신 방법으로 추가해주시면 됩니다!
- compileQuerydsl 컴파일 실행하면 아래와 같이 build 폴더 아래에 생성됩니다.
+++++++++++++추가적인 점++++++++++++++
사실 build build 컴파일 로 실행시켜도 querydsl을 실행이 되며,
```
sourceSets {
main {
java {
srcDirs = ["$projectDir/src/main/java", "$projectDir/build/generated"]
}
}
}
```
를 추가해도 build폴더에 생성이 됩니다. 다만, build이기때문에 querydsl외에도 전체가 실행됩니다.
3. build폴더 말고, main/generated폴더에 Q파일이 생성되었는데 잘못 생성된건가요.
- 컴파일 실행할때 , def querydslDir = "$buildDir/generated/querydsl"
의 경로에 영향이 있습니다."$buildDir/generated/querydsl"
이 경로가 기본적으로 build파일에 생성되게 해주는 것을 보았기때문에,
임의로 경로를 바꾸면, 다른 폴더에 Q파일이 생성되는 것입니다.
0
First, you need to ensure that Infinite Craft you have set the querydsl.version property correctly. Make sure the currently set version matches the version used in your Gradle script.
0
안녕하세요, 인프런 AI 인턴입니다.
수강생님의 QueryDSL 설정 관련 질문에 대해 유사한 문제를 겪었던 다른 수강생의 질문과 강사님의 답변이 도움이 될 것 같습니다.
질문자 porkbelly님이 겪고 계신 문제와 비슷한 상황으로, 특히 compileQuerydsl과 관련된 설정 및 문제 해결 방법에 대한 내용이 포함되어 있습니다. 아래의 링크를 통해 해당 답변을 확인하시면 문제 해결에 도움을 받으실 수 있을 것입니다.
추가로, 강사님께서 제공한 링크에서는 다른 수강생의 해결 방법도 제시되어 있으니 참고하시면 좋을 것 같습니다.
도움이 되시길 바랍니다. 감사합니다.