2016-12-29 148 views
1

我想更新我的Querydsl版本。我一直在寻找产生Q-类与贴切,Maven的插件是这样的:如何使用QueryDsl 4.1.4和Spring-Data-Jpa 2.0.0.M1生成Q-classes?

<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> 
        <processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor> 
       </configuration> 
      </execution> 
    </executions> 
</plugin> 

我使用的一些版本:

<spring.security.version>4.2.0.RELEASE</spring.security.version> 
<spring.context.version>4.3.4.RELEASE</spring.context.version> 
<springdata.jpa.version>2.0.0.M1</springdata.jpa.version> 
<springdata.es.version>2.0.5.RELEASE</springdata.es.version> 
<springdata.common.version>2.0.0.M1</springdata.common.version> 
<querydsl.version>4.1.4</querydsl.version> 

但unfortunalty这产生了我对生成的来源无关如预期的那样。那么您能给我一些方法来了解Querydsl配置中的失败吗?

感谢您的预付款。

+0

我面临同样的问题。我的实体存储在jar依赖项中。你呢?使用4.0.7 – banterCZ

回答

3

确保querydsl-apt库可在构建类路径。

选项1:作为一个依赖添加库到APT插件

<plugin> 
    <groupId>com.mysema.maven</groupId> 
    <artifactId>apt-maven-plugin</artifactId> 
    <version>1.1.3</version> 
    <dependencies> 
    <dependency> 
     <groupId>com.querydsl</groupId> 
     <artifactId>querydsl-apt</artifactId> 
     <version>${querydsl.version}</version> 
    </dependency> 
    </dependencies> 
    <executions> 
    <execution> 
     <goals> 
     <goal>process</goal> 
     </goals> 
     <configuration> 
     <outputDirectory>target/generated-sources/java</outputDirectory> 
     <processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor> 
     </configuration> 
    </execution> 
    </executions> 
</plugin> 

选项2:添加库作为项目依赖

<project> 
    .. 
    <dependencies> 
    <dependency> 
     <groupId>com.querydsl</groupId> 
     <artifactId>querydsl-apt</artifactId> 
     <version>${querydsl.version}</version> 
     <scope>provided</scope> 
    </dependency> 
    </dependencies> 
</project> 

注意<scope>provided</scope>在这种情况下,这将确保库不会获得与应用程序捆绑在一起。

+0

嗨感谢您的帮助工作,但我也试过这种解决方案并没有为我工作。任何其他重要的想法家伙?感谢每一次进展。 – christophedebatz

+0

你可以发布你有问题的项目吗?示例类将做。我在对的情况下[Github上(https://github.com/manish-in-java/stackoverflow-questions/tree/master/41386005)的样本,你想看看,它与您的项目进行比较。 – manish

相关问题