실전! Querydsl
질문있습니다. Jpa와 Mongo QueryDSL 같이 설정하는 법
현재 프로젝트를 진행하면서 한 프로젝트에 JPA(RDB:mysql), Mongo(Mongo)를 같이 쓰고 있는 중입니다.
다름이 아니라 Mongo도 QueryDSL이 있는 것을 파악하고 pom.xml에 build될 때 @Document가 있는 클래스도 Q클래스가 생성될 수 있도록 하려고 합니다.
<dependency> <groupId>com.querydsl</groupId> <artifactId>querydsl-jpa</artifactId> <version>${querydsl.version}</version></dependency><dependency> <groupId>com.querydsl</groupId> <artifactId>querydsl-mongodb</artifactId> <version>${querydsl.version}</version></dependency><dependency> <groupId>com.querydsl</groupId> <artifactId>querydsl-apt</artifactId> <version>${querydsl.version}</version> <scope>provided</scope> <exclusions> <exclusion> <artifactId>javassist</artifactId> <groupId>org.javassist</groupId> </exclusion> </exclusions></dependency>
<plugin> <groupId>com.mysema.maven</groupId> <artifactId>apt-maven-plugin</artifactId> <version>1.1.3</version> <executions> <execution> <goals> <goal>process</goal> </goals> <configuration> <outputDirectory>target/generated-sources/java</outputDirectory> <processors> <processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor> <processor>org.springframework.data.mongodb.repository.support.MongoAnnotationProcessor</processor> </processors> </configuration> </execution> </executions></plugin>
이렇게 하니 maven clean & compile을 수행하니,
error: Attempt to recreate a file for type 들이 쭉 뜨고,
error: cannot find symbol Q클래스들을 찾을 수 없다고 쭉 뜹니다.
그리고서 Q클래스가 제대로 생성되지 않은채로 빌드가 끝납니다.
혹시 Jpa QueryDSL, Mongo QueryDSL을 함께 쓰시는 법을 아시나요?