问题标签 [java-14]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
744 浏览

java - 没有枚举常量 org.gradle.api.JavaVersion.VERSION_14

使用 Intellij IDEA,我使用 Gradle 6.4 和 Java 14 创建了一个新的 Gradle 项目,但是当我尝试构建项目时,我收到了这个错误:

没有枚举常量 org.gradle.api.JavaVersion.VERSION_14

我该怎么办 ?

编辑 1
我正在使用最新的 EAP 版本的 IDEA。

0 投票
1 回答
606 浏览

java - intellij 中的 Jshell 不允许泛型类型

我刚开始在 intellij idea 社区版本中使用 jshell。当我在 jshell 中编写以下代码时,它可以工作。

但是,相同的代码在 intellij 中不起作用。它说“预期表达”。它执行良好,但显示List<String>. 问题是“自动完成”不起作用。为了解决这个问题,我们可以使用原始类型,但我想要一个通用的。有什么我想念的吗?如何编写泛型类型?

0 投票
1 回答
137 浏览

java - Java 记录数据类型不适用于网络通信

我认为 Java 14 中新的 Java Record 数据类型应该适合跨网络的数据,因为数据不应该在过程中发生变化,这是记录数据类型的主要特征 - 不可变。

我使用 RSocket 中的数据类型。在发送方,我收到编码器错误。我还没有找到编码器是关于什么的。在接收方,我得到一个解串器错误。据我所知,记录无法实现诸如 Serializable 之类的接口。

所以,记录数据类型不适用于网络编程,对吗?

更新:

我将 Serializable 接口添加到发送方和接收方的记录定义中。发出请求后,TCP发送端正常,接收端出错

标记这个问题的人有不同的经历吗?

0 投票
2 回答
3022 浏览

java - 如何将 Java 记录用作 ModelMapper 的 DTO?

我正在重构我的代码。我想在我的 DTO 中使用 java 记录而不是 java 类。要将 DTO 转换为实体,我使用的是 ModelMapper(版本 2.3.5)。当我尝试获取有关用户的信息(调用方法将实体转换为 DTO)时,我收到此错误。

Failed to instantiate instance of destination xxx.UserDto. Ensure that xxx.UserDto has a non-private no-argument constructor.

这是我的代码。

编辑:更新到版本2.3.8没有帮助!

0 投票
2 回答
756 浏览

java - 构建可执行jar

我正在做我的第一个 java 项目,并想使用 JavaFX GUI。我能够将其编译为可执行 jar,问题是运行它的唯一方法是在我的计算机上安装 jdk-14 计算机(因为我使用 java 14)并使用命令“java -jar NameJar.jar”。罐”。但是,我想通过双击程序图标来打开它,但我还没有找到如何操作。我想知道如何操作,以便通过双击图标打开它。

0 投票
0 回答
75 浏览

java - MapStruct - 找不到类型的返回值的转换器

我想将 java 14 中的记录与实体(来自 java 持久性)一起使用。我尝试将我的用户映射到 userDto 并且我的调试器显示所有映射都是正确的。但不幸的是,当我想打印我的 userDto 时出现错误:

Resolved [org.springframework.http.converter.HttpMessageNotWritableException: No converter found for return value of type: class xxx.UserMicroservice.dto.UserDto]

我做错了什么?

0 投票
0 回答
280 浏览

java - Intellij 检测到已删除的 sdk/jdk。如何更新智能缓存?

我在 Intellij 中添加了 Java 14 SDK,然后将其删除。我什至检查了 /Library/Java/JavaVirtualMachines 文件夹,SDK 不存在,但 IntelliJ 仍将 Java 14 列为检测到的 SDK。

0 投票
1 回答
333 浏览

java - 在运行时更改安全策略属性

这是我的政策文件

这是测试用例:

我期待AccessControlException在片段 2 的最后一行出现。任何指针?

0 投票
1 回答
744 浏览

java - 在Java中你如何调试由JPackage创建的exe

我正在尝试将使用 Izpack 创建的 Java 应用程序的 Windows 安装转换为使用 Java 14 中提供的 JPackage。安装程序会构建并安装,但是当我尝试运行它创建的 exe 时,它​​会失败,但没有提供有关失败原因的信息。

是否有日志或某种方法可以找出它实际上无法启动的原因?

0 投票
1 回答
324 浏览

java - 为什么Java JPackage 在两个地方安装Windows dll 文件?

为什么 Java JPackage 在两个地方安装 Windows dll 文件?

我的Jlink cmd 是:

"C:\Program Files\AdoptOpenJDK\jdk-14.0.0.36-hotspot\bin\jlink" --module-path="C:\Program Files\AdoptOpenJDK\jdk-14.0.0.36-hotspot\jmods" --add-模块 java.desktop、java.datatransfer、java.logging、java.management、java.naming、java.net.http、java.prefs、java.scripting、java.sql、jdk.management、jdk.unsupported、jdk.scripting .nashorn,jdk.jcmd --输出 C:\code\jthink\jaikoz\windowsjre\JVM64

我的构建命令是

"C:\Program Files\AdoptOpenJDK\jdk-14.0.0.36-hotspot\bin\jpackage" -i C:\Code\jthink\jaikoz\target\Jaikoz\activebuild\buildWindows\lib --runtime-image C:\code \jthink\jaikoz\windowsjre\JVM64 --main-class com.jthink.Jaikoz --name Jaikoz --win-dir-chooser --main-jar jaikoz.jar --app-version 10.2.0 --install-dir Jthink2\Jaikoz --copyright "版权信息" --arguments "-l2 -m2 -f" --vendor JThink

它们直接安装在安装文件夹中,并且在runtime/bin文件夹中,是否意味着这样做?

在此处输入图像描述

在此处输入图像描述