Gradle配置IDEA正常识别JPA Metamodel Generator动态生成的代码

我们在使用JPA动态查询构建查询条件时,为了实现安全的类型检查,常常需要引用Hibernate JPA Metamodel Generator自动为我们生成静态元模型类。

而这些类由于编译时由Hibernate JPA Metamodel Generator自动生成在其他路径下,IDEA默认无法自动识别这些“特别”的类,所以IDEA中的JPA动态查询相关代码常常会出现编译错误。

如果你使用的是Gradle构建工具,只需在构建脚本中添加如下内容即可解决此类问题啦。

build.gradle添加的配置如下:

// 所有自动生成的代码(比如JPAMetaModelEntityProcessor自动生成的代码等)都统一存放到build/generated目录下
// 同时将该目录添加到main SourceSets中,以便IDEA可以识别
compileJava {
    options.compilerArgs << "-s"
    options.compilerArgs << "$projectDir/build/generated"
    doFirst {
        file(new File("$projectDir/build/generated")).mkdirs()
    }
}
sourceSets.main.java.srcDirs += "$projectDir/build/generated"

执行gradle clean build之后,再次用IDEA打开工程,编译问题就都解决啦。

时间: 2024-12-31 07:19:15

Gradle配置IDEA正常识别JPA Metamodel Generator动态生成的代码的相关文章

使用eclipse的Axis2 Code Generator插件生成客户端代码遇到的问题

使用Axis2 Code Generator生成客户端代码到最后生成代码过程中报错,An error occurred while completing process -java.lang.reflect.InvocationTargetException 解决办法如下: 下载backport-util-concurrent-3.1.jar和geronimo-stax-api_1.0_spec-1.0.1.jar 添加到eclipse-plugins-Axis2_Codegen_Wizard_

Android Gradle 配置 [转]

转载自:http://pybeta.com/2016/06/about-gradle/ Android Gradle配置 编译加速 在gradle.properties中配置 1 org.gradle.configureondemand=true #demand 2 org.gradle.daemon=true #单独的守护进程 3 org.gradle.parallel=true #串行编译 4 org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m

Android Studio下项目构建的Gradle配置及打包应用变体

Gradle简介 ??Gradle是一个自动化构建工具,采用Groovy的Domain Specific Language(领域特定语言)来描述和控制构建逻辑.具有语法简洁.可读性强.配置灵活等特点.基于Intellij IDEA社区版本开发的Android Studio天生支持Gradle构建程序.Groovy是一种基于JVM的敏捷开发语言,结合了Phthon.Ruby和Smalltalk的许多强大特性.同时,Groovy代码既能够与java代码很好地结合,也能够用于扩展现有的代码. Grad

JFinal学习 &amp; Gradle配置续

接上一篇对Gradle的学习,再用JFinal项目再建一个. gradle配置如下: group 'com.jfinal' version '1.0-SNAPSHOT' apply plugin: 'java' sourceCompatibility = 1.8 repositories { // maven库 def cn = "http://maven.aliyun.com/nexus/content/groups/public/" def abroad = "http:

服务器技术第一天(gradle配置与入门)

Gradle概述: 在Gradle中,有两个基本概念:项目和任务 Gradle只是提供了构建项目的一个框架,真正起作用的是Plugin 1.gradle配置(MAC): (1)从官网下载gradle: 地址:http://gradle.org/gradle-download/ (2)安装gradle: 1)将gradle包文件放到/Applications/gradle-2.6下面 2)打开控制台设置环境变量: vi .bash_profile 在其中加上PATH=$PATH:/Applicat

记录使用Gradle配置AndroidAnnotations

系统:Mac Yosemit 10.10 JDK:1.6+ Android Studio:1.2 原来看到有人用AndroidAnnotations,十分羡慕.但是Gradle并不熟悉,现找到了正确的配置方法,此篇作为记录.奇怪的是为什么官方不放出可以帮助配置的插件呢~~ Android Studio上找到的插件不清楚是怎么工作的~~|| 需要注意的是,使用Gradle配置AndroidAnnotations需要连接网络 新建一个项目或者是在原有项目上都可以配置.首先来看我们的android s

Android开发之深入理解Android Studio构建文件build.gradle配置

摘要: 每周一次,深入学习Android教程,TeachCourse今天带来的一篇关于Android Studio构建文件build.gradle的相关配置,重点学习几个方面的内容:1.applicationId和package属性值的关系,2.怎么配置安全的自定义签名,3.两种构建类型的区别,4.为什么要定制产品的偏好配置?,5.怎么才能加快DEX文件的生成速度,6.为什么要将一个apk拆分成多个?,7.关于引入依赖包你不知道的秘密.通过这篇文章的学习,你会对build.gradle文件有一个

Gradle 配置 Android 工程

# Gradle 配置 Android 工程 # 随着Android studio 的普及,gradle 也开始在android 开发着中普及起来.这里分享一下我的grale 脚本以及对gradle的认识. 1.Gradle 的基本结构 整个工程的gradle 由 project build.gradle, seetings.gradle,gradle.properties,module build.gradle 组成. ## 1.project build.gradle ## projects

generator自动生成mybatis配置和类信息

generator自动生成mybatis的xml配置.model.map等信息: 1.下载mybatis-generator-core-1.3.2.jar包.        网址:http://code.google.com/p/mybatis/downloads/list?can=3&q=Product%3DGenerator,下载mybatis-generator-core-1.3.2-bundle.zip,解压        找到lib下的需要jar包. 2.编写genertor的xml文