2017-10-30 3 views
1

私は、Spring-Boot 1.5.2プロジェクトでqueryDSL 1.4.1のQクラスを取得しようとしています。 IDEはIntellij Ultimateです。そのフォルダが空である(javaGeneratedSourcesポイントが/ javaの$ buildDir /生成され、ファイル・ソースにもかかわらずQueryDSL 4.1.4&Intellijのグラデル

build\generated\source\apt\main\generated\com\example\domain 

build.gradle

buildscript { 
ext { 
    springBootVersion = '1.5.2.RELEASE' 
    } 
repositories { 
    mavenCentral() 
    } 
dependencies { 
    classpath("org.springframework.boot:spring-boot-gradle-plugin:${springBootVersion}") 
    } 
} 

plugins { 
    id 'net.ltgt.apt' version '0.8' 
    id 'java' 
} 

apply plugin: 'java' 
apply plugin: 'eclipse' 
apply plugin: 'org.springframework.boot' 
apply plugin: 'idea' 

version = '0.0.5-SNAPSHOT' 
sourceCompatibility = 1.8 

ext { 
    queryDslVersion = '4.1.4' 
    javaGeneratedSources = file("$buildDir/generated-sources/java") 
} 

compileJava { 
    doFirst { 
     javaGeneratedSources.mkdirs() 
    } 
    options.compilerArgs += [ 
      '-parameters', '-s', javaGeneratedSources 
    ] 
} 

idea { 
    module { 
     sourceDirs += file('generated/') 
     generatedSourceDirs += file('generated/') 
    } 
} 

repositories { 
    mavenCentral() 
} 

dependencies { 
    compile('org.springframework.boot:spring-boot-starter-data-jpa') 
    compile('org.springframework.boot:spring-boot-starter-jdbc') 
    compile('org.springframework.boot:spring-boot-starter-thymeleaf') 
    compile('org.springframework.boot:spring-boot-starter-web') 
    compile('org.springframework.boot:spring-boot-starter-security') 
    compile('org.springframework.boot:spring-boot-starter-mail:1.5.7.RELEASE') 
    compile ("org.thymeleaf.extras:thymeleaf-extras-springsecurity4:3.0.0.RELEASE") 
    compile group: 'org.springframework.boot', name: 'spring-boot-starter-logging', version: '1.5.2.RELEASE' 
    compile group: 'org.thymeleaf.extras', name: 'thymeleaf-extras-springsecurity4', version: '2.1.2.RELEASE' 
    compile group: 'org.springframework.boot', name: 'spring-boot-autoconfigure', version: '1.5.2.RELEASE' 
    compile("com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.4.0") 

    compile group: 'org.hibernate', name: 'hibernate-java8' 

    compile "com.querydsl:querydsl-root:$queryDslVersion" 
    compile "com.querydsl:querydsl-jpa:$queryDslVersion" 
    compileOnly "com.querydsl:querydsl-apt:$queryDslVersion:jpa" 

    compile("org.springframework.boot:spring-boot-devtools") 
    compile('mysql:mysql-connector-java') 
    testCompile('org.hsqldb:hsqldb') 
    testCompile('org.springframework.boot:spring-boot-starter-test') 
} 

Qクラスがで生成されます)。

enter image description here

ビルドエラーは次のとおりです。

C:\Users\User\IdeaProjects\demo3\src\main\java\com\example\services\EpServiceImpl.java:13: error: cannot find symbol import com.example.domain.QEp; ^ symbol: class QEp location: package com.example.domain

私は他のスタックオーバーフローをチェックherehereに答えるが、私は、これらの方法は、仕事を得ることができませんでした。

答えて

4

これを試すことをおすすめします。

buildscript { 
    ext { 
     querydslVersion = "4.1.4" 
     metaModelsSourcesDir = file("metamodels") 
    } 
} 

configurations { 
    querydslapt 
} 

sourceSets { 
    main { 
     java { 
      srcDir metaModelsSourcesDir 
     } 
    } 
} 


task querymodels(type: JavaCompile, group: 'build') { 
    doFirst { 
     delete metaModelsSourcesDir; 
     metaModelsSourcesDir.mkdirs(); 
    } 

    classpath = configurations.compile + configurations.querydslapt 
    destinationDir = metaModelsSourcesDir 

    source = sourceSets.main.java 
    options.compilerArgs = [ 
      "-proc:only", 
      "-processor", "com.querydsl.apt.jpa.JPAAnnotationProcessor", 
      "-s", metaModelsSourcesDir 
    ] 
} 

dependencies { 
    compile("com.querydsl:querydsl-core:${querydslVersion}") 
    compile("com.querydsl:querydsl-jpa:${querydslVersion}") 

    querydslapt("com.querydsl:querydsl-apt:${querydslVersion}") 
} 
関連する問題