gradle - 关于QueryDSL、Spring Data、Gradle的几个问题
问题描述
我正在将 Spring Data 用于我正在处理的网络服务器项目。对于我的构建工具,我正在使用 Gradle,并且我正在尝试集成 QueryDSL 以便能够在我的应用程序中针对我的数据库(如果重要的话是 MongoDB)编写动态查询。我有几个关于正确设置环境的问题:
1) 在集成 QueryDSL 后,我注意到我的一些构建步骤开始失败。具体来说,有 2 个构建步骤调用compileQuerydslJava
和findbugsQuerydsl
(后者来自 FindBugs 插件)都失败了。根据错误消息,QueryDSL 生成的文件似乎无法被必要的引擎拾取。具体来说,对于findbugsQuerydsl
,我得到的错误如下所示:
> Task :my-service:findbugsQuerydsl FAILED
No files to be analyzed
对于 compileQuerydslJava,错误如下所示:
> Task :message-service:compileQuerydslJava FAILED
C:\MY_PATH\QMyEntity.java:3: error: package com.querydsl.core.types does not exist
import static com.querydsl.core.types.PathMetadataFactory.*;
如果我使用 -x 标志排除这些构建步骤,一切正常,代码编译并运行没有问题。但是,我有点不愿将其视为最佳解决方案。大概这些工具是正确开发的,应该能够配置为正常工作,所以我想知道我错过了什么。
2) 我团队的另一位开发人员检查了这段代码并尝试运行它,但 QueryDSL 生成的类并没有自动为他创建。这导致他在应用程序中编译错误,直到他运行gradle build
. 我宁愿这不是标准做法,而是像库一样自动生成所需的 Querydsl 文件。有没有办法做到这一点?或者至少在编译时生成文件,这样就不会导致编译错误?
我不确定哪些信息有助于调试此问题,因此请提出任何有助于帮助我的问题。谢谢。
编辑:
1)作为参考,我的Querydsl版本是4.1.4。我知道这不是最新版本,但它是我用来设置 Querydsl 的教程中使用的版本。如果推荐我可以尝试 4.2.1。
解决方案
推荐阅读
- performance - 一致的哈希和粘性会话有什么区别?
- javascript - jQuery ajax 我需要将数据库表单中的布尔值从 true 更改为 false
- interface - 什么是 Franca IDL 生态系统
- c - 循环直到用户输入'x'
- json - 我在 3d 场景中加载 3d 对象(json 文件)时遇到问题
- r - R - 根据 ID 向量中包含的文本合并两个数据帧
- javascript - 允许导入的 Webpack 配置
- html - 文本在垂直方向上没有完全居中,因为字体的后代稍大
- c - 从 scanf 切换到 fgets & Char 到 Int - 卡在 while statment
- python - python html.select 返回无