问题标签 [java-15]

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 投票
2 回答
329 浏览

java - Eclipse 2020-09 中的 Java 15 插件支持不再可用

这个问题与这个问题类似。我知道你需要这个插件来支持 Eclipse 2020-09 中的 Java 15,但是,它似乎不再可用。

当我尝试通过市场安装它时,我收到此错误:

在https://download.eclipse.org/eclipse/updates/4.17-P-builds/找不到存储库 。

有没有办法从其他来源安装它?

我知道 eclipse 2020-12 已经发布,但由于错误#569498(在 eclipse 2020-09 中没有发生),我们无法使用它。所以我们真的需要一种在 eclipse 2020-09 中安装 Java 15 支持的方法。

0 投票
1 回答
937 浏览

spring-boot - Spring Boot 2.4 及更高版本的 Mapstruct 和 Lombok 出现意外结果 此版本是否有任何解决方法或问题?

我正在使用 2.2.5 以上最新版本的 Spring boot 和 Java 15、lombok、Mapstruct 来映射一些 pojo。

使用spring boot 2.2.5 版时,我得到了预期的结果:

但是当使用2.4 及更高版本时,没有 builder,而是我有java new 关键字而不是其他字段,我得到:

这是不起作用的maven pom conf:BOM

我唯一更改的是 Spring Boot 版本,它按预期工作,请问 Spring Boot 2.4 及更高版本是否有任何解决方法或问题?

0 投票
2 回答
6022 浏览

java - NetBeans 12.0:“类没有主方法”(但有)

NetBeans 12.0

JDK 15

我无法启动我的程序,单击绿色运行按钮不执行任何操作,并且在 MainFrame 上右键单击 + 运行文件会出现错误“类没有主要方法”。但正如您在下面的 GIF 中看到的,它确实有一个 main(String args[])。

有谁知道为什么会这样?

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

0 投票
0 回答
536 浏览

java - java 15 纳秒精度导致 Linux 环境出现问题

我们已将我们的应用程序更新到 Java 15,并且系统时钟的新增强到纳秒精度 ( https://bugs.openjdk.java.net/browse/JDK-8242504 ) 与 Postgres 中的 TIMESTAMP 限制不兼容。时间因底层操作系统而异,Mac (Big Sur) 中的 Instant 不会以纳秒为单位给出时间,但在 Linux 中会给出。

我们在我们的代码库中使用 Instant 类型。我们的测试正在比较内存中 Instant 类型的对象与获取的对象,因此它们会根据它们运行的​​操作系统而失败。

在 Linux 中,内存中的 Instant 对象具有纳秒的精度,而 Postgres 存储的 Instant (TIMESTAMP) 具有微秒的精度。断言失败:

在 Mac 中,Instant 对象的精度为微秒,与 Postgres 的时间戳精度完全一致,因此测试通过了,就像它们迄今为止所做的一样。

我们希望避免截断 Instant 或向 PG 添加插件以支持纳秒。

有人可以为这个问题提供更优雅的解决方案吗?

0 投票
2 回答
236 浏览

java - 密封类不编译,Eclipse 编译器错误?

我在 Eclipse 2020-09 和 2020-12 中有这两个课程:

A级

B类

但是,eclipse 编译器在 B 类中给了我一个编译器错误:

扩展密封类 Serializable 的类型 B 应该是 Serializable 的允许子类型

这似乎很奇怪,Serializable甚至不是密封类。我在JEP-360中一无所获。删除“implements Serializable”可以解决该错误。

这是 Eclipse 编译器中的错误吗?

0 投票
0 回答
596 浏览

java - com.intellij.util.ReflectionUtil 对方法 java.util.ResourceBundle.setParent(java.util.ResourceBundle) 的非法反射访问

我在 VSCode 中编写了一些 kotlin 代码

其中之一是:

当我运行它时,我得到:

它有效,但我无法隐藏或修复警告,我使用 JDK 15

我没有在 IntelliJ 上收到这些警告

0 投票
1 回答
3927 浏览

java - Java 中的文本块(或多行字符串)功能是什么?

Java SE 13 引入了文本块(或多行字符串)功能。它与现有的字符串表示有什么区别和相似之处?

0 投票
1 回答
434 浏览

java - 将 JDK 15 添加到 Netbeans 8.2 RC

试图弄清楚如何将 JDK 15 添加为 Netbeans 的 Java 平台。

当前 Java 版本:

在此处输入图像描述

文件夹路径:

在此处输入图像描述

环境价值观中的 JAVA_HOME:

在此处输入图像描述

将 JDK 15 添加到 Netbeans:

步骤1)

在此处输入图像描述

第2步)

在此处输入图像描述

步骤 3)

在此处输入图像描述

第4步)

在此处输入图像描述

步骤 5)

在此处输入图像描述

步骤 6)

在此处输入图像描述

步骤 7)

在此处输入图像描述

完成最后一步后,我的项目类告诉我:

在此处输入图像描述

我还编辑了 Netbeans 配置文件:

在此处输入图像描述

在此处输入图像描述

但是当我这样做时,Netbeans 会“中断”,因为我无法查看项目文件和发生的其他一些导航问题。

难道我做错了什么?我在这里错过了什么吗?

0 投票
3 回答
692 浏览

java - JDK 15 中的 Ed25519,从字节数组中解析公钥并验证

由于 Ed25519 出现的时间不长(在 JDK 中),因此关于如何使用它的资源很少。

虽然他们的示例非常简洁和有用,但我很难理解我在密钥解析方面做错了什么。

他们的公钥是从 iDevice 发送的数据包中读取的。

(假设它是一个字节数组)

通过搜索并尽力了解密钥的编码方式,我偶然发现了这条消息。

这意味着,如果我想得到yisXOdd我必须做一些工作。 (如果我理解正确)

下面是它的代码,但验证仍然失败。

我认为,我通过反转数组以将其恢复为 Big Endian 以供 BigInteger 使用,从而正确地做到了这一点。

我的问题是:

  1. 这是从字节数组中解析公钥的正确方法吗
  2. 如果是,那么它未能通过验证过程的可能原因是什么?

数据(操作前)(全部为十六进制):

以及操纵后的公钥:

非常感谢您,非常感谢您的每一点帮助。当 Ed25519 实施不会那么新鲜时,这将有助于更多的人在以后偶然发现这个问题。

0 投票
2 回答
174 浏览

java - 可重入锁实现细节

我试图了解ReentrantLock::lock方法中的特定细节。我正在查看它并将其视为:

所以首先它尝试这个方法:(initialTryLock我会看看NonfairSync),它这样做:

  • 它做了 a compareAndSwap(0, 1),这意味着如果没有人持有锁(0)并且我可以抓住它(1),我现在持有锁。
  • 如果上述失败,它会检查请求锁的线程是否已经是所有者。
  • 如果失败,它会返回false,这意味着我无法获得锁。

让我们假设上述失败。然后它继续并acquire调用AbstractQueuedSynchronizer

tryAcquire它首先调用NonfairSync

您可以看到它再次尝试获取锁,尽管initialTryLock已经失败。从理论上讲,这本tryAcquire可以简单地返回false,对吗?

我认为这是一次潜在的重试,因为在调用initialTryLockand之间tryAcquire,锁可能已被释放。这样做的好处可能是因为下一个操作(之后tryAcquire)失败,是该线程的昂贵入队。所以我想这是有道理的(重试)因为那个?