Search code examples
springjpaspring-dataquerydsl

QueryDsl - How to create Q classes with maven?


I have web project spring mvc with spring data
here is example :
https://github.com/prilia/SpringJpa-Quarydsl-Test/tree/master/JpaSpringQuarydsl

I checked a lot of pom.xml that I found in web to create a Q classes of entities, but no lack.
Please help me with creating Q classes with maven.


Solution

  • you need plugin, try this:

                    <plugin>
                        <groupId>com.mysema.maven</groupId>
                        <artifactId>maven-apt-plugin</artifactId>
                        <version>1.0.4</version>
                        <executions>
                            <execution>
                                <id>process-common-model</id>
                                <goals>
                                    <goal>process</goal>
                                </goals>
                                <phase>generate-sources</phase>
                                <configuration>
                                    <sourceDirectory>${project.build.directory}/{yourSourceDir}</sourceDirectory>
                                </configuration>
                            </execution>
                        </executions>
                        <configuration>
                            <outputDirectory>target/generated-sources/querydsl</outputDirectory>
                            <processors>
                                <processor>com.mysema.query.apt.jpa.JPAAnnotationProcessor</processor>
                            </processors>
                            <options>
                                <querydsl.entityAccessors>true</querydsl.entityAccessors>
                                <querydsl.createDefaultVariable>true</querydsl.createDefaultVariable>
                                <querydsl.packageSuffix>.qdsl</querydsl.packageSuffix>
                            </options>
                        </configuration>
                    </plugin>
    

    I copied this from my project. just added it to your pom and have a try.

    There are additional options in the code above, if you just wanna a simple one, focus on the querydsl reference