Spring Data JPA - 规范和 Querydsl

2023-12-20

我正在尝试将 QueryDSL 与 Spring Data 集成到我现有的项目中,我尝试了不同的示例,现在我决定坚持使用这个高级 Spring Data JPA - 规范和 Querydsl https://spring.io/blog/2011/04/26/advanced-spring-data-jpa-specifications-and-querydsl/.

Problem:当我作为 Maven 生成源运行项目时,出现此错误

error: Annotation processor 'com.mysema.query.apt.jpa.JPAAnnotationProcessor' not found

我将此插件添加到我的 pom.xml 中,如博客文章所示:

<plugin>
  <groupId>com.mysema.maven</groupId>
  <artifactId>maven-apt-plugin</artifactId>
  <version>1.0</version>
  <executions>
    <execution>
      <phase>generate-sources</phase>
      <goals>
        <goal>process</goal>
      </goals>
      <configuration>
        <outputDirectory>target/generated-sources</outputDirectory>
        <processor>com.mysema.query.apt.jpa.JPAAnnotationProcessor</processor>
      </configuration>
    </execution>
  </executions>
</plugin>

和依赖关系:

<dependency>
     <groupId>com.mysema.querydsl</groupId>
     <artifactId>querydsl-sql</artifactId>
     <version>3.6.9</version>
</dependency>

任何人都可以为我指明如何解决这个问题或如何将 QueryDSL 正确集成到我的项目中的正确方向吗?提前致谢!


我可以使这项工作的方式是使用com.querydsl.apt.jpa.JPAAnnotationProcessor 而不是com.mysema.query.apt.jpa.JPAAnnotationProcessor 并更改依赖项,如下所示:

<dependency>
  <groupId>com.querydsl</groupId>
  <artifactId>querydsl-apt</artifactId>
  <version>4.0.6</version>
</dependency>
<dependency>
  <groupId>com.querydsl</groupId>
  <artifactId>querydsl-jpa</artifactId>
  <version>4.0.6</version>
</dependency>

插件最终是这样的:

<plugin>
  <groupId>com.mysema.maven</groupId>
  <artifactId>apt-maven-plugin</artifactId>
  <version>1.1.3</version>
  <executions>
    <execution>
      <phase>generate-sources</phase>
      <goals>
        <goal>process</goal>
      </goals>
      <configuration>
        <outputDirectory>${project.build.directory}/generated-sources</outputDirectory>
         <processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>
      </configuration>
    </execution>
  </executions>
</plugin>

我还在项目根目录的命令行中执行mvn eclipse:eclipse更新 Eclipse 以包含生成的源。

Update:

将插件 maven-apt-plugin 替换为 apt-maven-plugin 并将版本更改为 1.1.3

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring Data JPA - 规范和 Querydsl 的相关文章

随机推荐

  • 在通过本地主机传输期间,OSI 模型使用了哪些层?

    通过 localhost 地址或 127 0 0 1 传输数据时 OSI 模型中使用了哪些层 我相信通信从应用程序层开始 一直向下直到某个层 但没有数据经过物理层 或者有吗 到 127 0 0 1 的流量将由 TCP IP 模型的互联网层环
  • 从单应性分解中找到最合适的旋转和平移

    我试图从单应性函数中找到旋转和平移 首先我计算相应的特征点并使用findHomography 我计算了单应性矩阵 然后 使用decomposeHomographyMat 我得到了四个旋转和平移结果 我使用的代码如下 Mat frame 1
  • Git fetch/pull 已停止工作

    Git fetch 和 pull 昨天在服务器 AWS 实例 上停止工作 git fetch ERROR Repository not found fatal The remote end hung up unexpectedly 该实例上
  • 如何找到仅包含/由给定字符序列组成的单词

    我希望循环遍历字典文件并查找仅包含给定字符的单词 示例 dgo 期望结果 狗 神 NOT 包含 其中 给定字符的单词 我正在使用以下代码 while dictionaryWord br readLine null if dictionary
  • Wildfly 上基于 WSDL 的 Web 服务

    我正在尝试创建一个简单的基于 WSDL 的 Web 服务 以便使用 Apache CXF 部署在 Wildfly 上 我尝试使用 wsdl 文件进行标准 web xml cxf servlet xml 配置 但服务器给出了以下错误 在 ws
  • Mockito - 验证双精度值

    我有一个名为 method1 的方法 它采用在 myManager 上调用的双精度值 我正在传递这个 65 888 60 当我尝试验证这一点时 我遇到了浮点问题 验证失败 它预计 3953 28 但 3953 280029296875 ve
  • 您如何命名单元测试方法?

    命名单元测试方法的一般规则是什么 相信很多人也想知道这个问题 假设 被测试的方法是 public Customer GetCustomerById int id 您如何命名您的单元测试方法 GetCustomerById GetCustom
  • 读取和写入日历

    我的目标是阅读和编写日历 我能够从 content calendar calendars 和 content calendar events 读取数据 String uriString content calendar calendars
  • PHPStan 中未定义变量,但已在其他地方声明

    PHPStan 中如何处理这些场景 假设您使用纯 PHP 作为模板引擎 例如 view php b b
  • SQL 查询选择除最大值之外的所有内容

    我有一个相当复杂的查询 它从三个表中获取数据 现在我希望它变得更加复杂 天哪 我希望最后发布的功能显示在页面的它自己的部分中 通过选择表中的最后一个条目非常容易 但是 对于复杂的查询 网站的主页 我希望能够不显示此功能 我想union对我之
  • Task.WaitAll,如何找到导致AggregateException的任务

    假设我得到以下代码 var tasks BuildTaskList try Task WaitAll tasks ToArray catch AggregateException exception 我如何知道哪个任务引发了哪个异常exce
  • 随机选择子目录中的 x 个文件

    我需要在数据集中随机抽取 10 个文件 图像 但该数据集是分层结构的 所以我需要每个包含图像的子目录只随机保存 10 个图像 有没有一种简单的方法可以做到这一点 或者我应该手动进行 def getListOfFiles dirName cr
  • 如果栅格值 NA 搜索并提取最近的非 NA 像素

    在将栅格的值提取到点时 我发现我有几个NA的 而不是使用buffer and fun的论点extract函数 相反我想提取最近的非NA像素到重叠的点NA 我正在使用基本的提取功能 data extr lt extract loc thr d
  • 如何让超级代理回报承诺

    我一直在学习 Node Javascript 从一开始就使用 Promise 我不知道如何not使用承诺并经常想知道如果没有它们 其他人会如何相处 所以我有时需要 承诺 简单的事情 比如用fs var readFile function p
  • NSUserScriptTask:接受的文件类型?

    我正在使用 NSUserScriptTask 运行用户放置在应用程序脚本目录中的脚本 但是 我发现很难找出 NSUserScriptTask 接受的已知脚本类型以及docs http developer apple com library
  • 在Python中使用paramiko打开远程文件慢[重复]

    这个问题在这里已经有答案了 我正在使用 paramiko 在 python 中打开远程 sftp 文件 使用 paramiko 返回的文件对象 我正在逐行读取文件并处理信息 与使用 os 中的 python 内置方法 open 相比 这看起
  • 为每个终端加载 .bash_profile

    我在我的中设置了一些别名 bash 配置文件在我的 Mac OS X 上 它有效 但是当我打开新选项卡时 我总是必须加载我的 bash 配置文件使用此命令创建文件 source bash profile 即使我正在重新启动 Mac 或 Li
  • 在输入控制上失去焦点后更新模型

    在此代码中
  • 在命令行上运行 r 代码时出现包错误

    我运行的一些代码包括这一部分 if require yaml install packages yaml library yaml 当我在 rstudio 中运行时 一切都运行无缝并且没有错误 但是 当我尝试在命令行上运行代码时 出现以下错
  • Spring Data JPA - 规范和 Querydsl

    我正在尝试将 QueryDSL 与 Spring Data 集成到我现有的项目中 我尝试了不同的示例 现在我决定坚持使用这个高级 Spring Data JPA 规范和 Querydsl https spring io blog 2011