Spring Boot 2 + Java 9 + Querydsl

2024-03-12

我已成功将我的应用程序(Spring Boot + Java + Maven)更新到 Spring Boot 2。现在我正在尝试更新到 Java 9。

根据 Nicolas Fränkel 的博客文章 (将 Spring Boot 应用程序迁移到 Java 9 - 兼容性 https://blog.frankel.ch/migrating-to-java-9/1/)我在不使用模块信息文件的情况下完成了更新到 Java 9。但是当我创建这样的文件时,apt-maven-plugin 会卡在创建 Q 类型上。

有人使用 Java 9 + Maven + Querydsl 成功完成吗?

我的 apt-maven-plugin 的 Maven 配置如下所示:

     <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>

当我跑步时mvn 生成源,该插件仅打印一堆错误消息,不生成任何类并报告成功:

$ mvn generate-sources
...
[INFO] --- apt-maven-plugin:1.1.3:process (default) @ app ---
.../src/main/java/module-info.java:9: error: module not found: java.validation
   requires java.validation;
                ^
.../src/main/java/module-info.java:13: error: module not found: hibernate.jpa
   requires hibernate.jpa;
                     ^
...
21 errors
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3.484 s
[INFO] Finished at: 2018-04-01T13:11:25+02:00
[INFO] ------------------------------------------------------------------------

一起使用 QueryDSL + Mapstruct 和 Lombok:

<plugin>
    <groupId>com.mysema.maven</groupId>
    <artifactId>apt-maven-plugin</artifactId>
    <dependencies>
        <dependency>
            <groupId>org.mapstruct</groupId>
            <artifactId>mapstruct-processor</artifactId>
            <version>${org.mapstruct.version}</version>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <version>${lombok.version}</version>
        </dependency>
    </dependencies>
    <executions>
        <execution>
            <goals>
                <goal>process</goal>
            </goals>
            <configuration>
                <outputDirectory>target/generated-sources/annotations</outputDirectory>
                <processors>
                    <processor>lombok.launch.AnnotationProcessorHider$AnnotationProcessor</processor>
                    <processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>
                    <processor>org.mapstruct.ap.MappingProcessor</processor>
                </processors>
            </configuration>
        </execution>
    </executions>
</plugin>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Spring Boot 2 + Java 9 + Querydsl 的相关文章

随机推荐

  • 如何避免 Angular 中元素重叠

    我的应用程序是基于 Angular 的 我用表格行动态填充页面 页面下方有一个应用程序控制台 该元素的位置似乎是固定的 当我单击添加新行按钮时 新行与应用程序控制台重叠 如何避免这种情况 下面是图片和代码片段 app component h
  • Swift 中的 CGPointMake

    如何使用CGPointMake in Swift 有等效的吗 我收到错误 使用未解析的标识符 CGPointMake 基本上 我试图为 Sprite Kit 节点分配一个位置 但不知道如何在 Swift 中执行此操作 class Playe
  • edmx填充mdf?

    当我在 edmx 文件中 从模型生成数据库 时 它会请求数据源并生成 sql 文件并将数据源添加到 app config 如果我选择 sqlserver 作为源 它工作正常 我可以使用现有数据库或创建一个新数据库 并且表会填充到它并准备使用
  • WP7 - 使用 Application.Resources 中定义的 Storyboard

    In my Application Resources我有以下内容Storyboard定义的
  • 使用具有正斜杠的密钥连接到 s3 接收器时出现无效主机名错误

    我有一个forward slash在 aws 密钥中 当我尝试连接到 s3 接收器时 Caused by java lang IllegalArgumentException Invalid hostname in URI s3 xxxx
  • 脚本不从 .angular-cli.json 加载

    我将新脚本添加到我的 angular cli json 文件中 如下所示 apps root src outDir dist assets assets favicon ico index index html main main ts p
  • 装配 x86-16 中的模式 X,为什么平面 1 未打印,而所有其他平面的顺序不正确?

    我正在 DosBox 0 74 上的 TASM 3 0 中写入 并且我正在尝试写入Mode x https en wikipedia org wiki Mode X 调整了13小时 无束缚模式 13 http www brackeen co
  • 使用 AWS IAM 的临时凭证

    我有一台服务器 它应该向客户端提供临时 AWS 凭证 凭证将使用 HTTPS 传输 客户端应该能够上传和下载 S3 文件 我的担忧如下 我有多个用户仅访问他们自己的目录 Users someUser myfile png 您可以设置策略以一
  • 是否可以在本地计算机和远程集群上运行 OpenMPI?

    我有一组需要在集群中执行的计算操作 可能像 512 个 MPI 进程 现在 我让集群上的根节点打开一个套接字 并在计算操作之间将数据传输到我的本地计算机 但我想知道是否可以只创建两个 MPI 组 其中一个组是我的本地组机和另一个远程集群 并
  • .NET Core SDK未安装或在路径下找不到

    在 VS 2015 下编译 Net Core RC2 项目时 我收到以下错误 GETSDKTOOLINGINFO 错误 NET Core SDK 未安装或 在路径 C Program Files dotnet bin 下找不到 这些 构建和
  • 禁用某些文件名的语法突出显示

    我在 vimrc 中启用了语法突出显示 但这使得加载某些文件太长 所以我需要禁用 或者 准确地说 不启用 启用它然后禁用不是解决方案 这些文件的语法突出显示 我试过 au BufNewFile BufRead inc syntax enab
  • 无尽的 ViewPager android

    假设我的 viewpager 中有两个页面 有什么办法可以从第 2 页移动到第 1 页 但这样做就像用户正在访问第 3 页 带有所有动画 您可以通过使用自定义 FragmentPagerAdapter 来实现此目的 该适配器一遍又一遍地提供
  • 如何确保同一服务器上不同用户的 R 环境一致?

    我正在使用内部软件包 MyPKG 编写可重复分析的协议 每个用户将提供自己的输入文件 除了输入之外 分析应在相同的条件下进行 例如 这样我们就可以推断不同的结果是由于不同的输入文件造成的 MyPKG 正在开发中 所以library MyPK
  • 如何在Python中比较两个有序列表?

    我有两个清单 a 0 2 1 b 0 2 1 我如何比较这两个列表以查看它们是否相等 相同 并且约束它们必须位于same order 我看到过一些问题要求通过对两个列表进行排序来进行比较 但在我的具体情况下 我没有检查排序的比较 而是完全相
  • AlertDialog MultiChoiceItems 侦听器问题

    我目前正在使用 AlertDialog builder 为用户创建多选列表 复选框 这非常有效 只是我们希望其中一个按钮取消选择列表中的所有其他按钮 builder setMultiChoiceItems list checked new
  • 如何有条件地替换集合中的值,例如replaceIf(Predicate)?

    有没有什么简单的方法可以替换 a 中的值列表或集合如果该值为空 我们总能做到list stream filter Objects nonNull 也许可以将 0 添加回列表中 但我正在寻找的是一个像这样的APIlist replaceIf
  • 如何将绘图仪表板应用程序导出到 html 独立文件中以与其他人共享?

    我已经构建了一个交互式仪表板 并且正在寻找一种方法将该应用程序导出为 HTML 格式 并与其他人共享 有什么提示给我吗 我用谷歌搜索过 大多数答案将我转到以下链接 https plot ly python getting started w
  • php pack:数据类型问题和结果验证

    我是 PHP 初学者 我的任务是构建命令 稍后将通过 UDP 发送到设备 运行 OSX PHP 5 5 3 8 为了创建二进制数据 我使用 pack 这是我的代码的示例
  • Mercurial 对于简单的 GLOB 语法给出“无效模式”错误

    我的中有以下内容 hgignore file syntax glob obj bin suo user ncb 如果我注释掉 过滤器 过滤效果很好 过滤掉了bin and obj文件夹 但是 如果我保留这些过滤器 我会收到以下错误 abor
  • Spring Boot 2 + Java 9 + Querydsl

    我已成功将我的应用程序 Spring Boot Java Maven 更新到 Spring Boot 2 现在我正在尝试更新到 Java 9 根据 Nicolas Fr nkel 的博客文章 将 Spring Boot 应用程序迁移到 Ja