问题标签 [java-17]

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 投票
6 回答
2237 浏览

java - 找不到 JDK 17 支持的 Gradle 版本。Gradle 支持 JDK 版本 7 到 16

只是尝试使用 jdk17 创建一个 Gradle 项目,面临以下问题。我知道 JDK 17 需要 Gradlew 7.3,但不确定我应该从哪里设置 Gradle 的版本

在此处输入图像描述

摇篮位置

在此处输入图像描述

摇篮版本

在此处输入图像描述

0 投票
0 回答
157 浏览

java - Raspberry Pi OS /bin/java:没有这样的文件或目录

我需要在我的树莓派上安装最新版本的 java。我已经通过 sdkman 安装了 java 版本 17。在我尝试使用java -version. 这只是提出:-bash: /home/pi/.sdkman/candidates/java/current/bin/java: No such file or directory

参考这个线程,我检查了我正在运行 64 位树莓派操作系统安装,并且下载的 java 版本也是 64 位的。

这里可能是什么问题?

0 投票
2 回答
55 浏览

java - 如何使用 Java 流来创建一个在嵌套集合的所有元素中迭代的数组?

我正在开发一个 Java 应用程序,我试图了解Stream概念是否对我的用例有用。

我正在尝试做一些类似于我在示例中发现的事情,但我的用例似乎更复杂。这是原始示例:

基本上它是从流开始创建一个数组。

按照我的情况。我有这个代表用户的主要用户DTO 类:

前面的 DTO 类包含表示用户类型集合的此字段(例如“ADMIN”、“READER”、“WRITER”等)。这是因为一个用户可以有多种类型:

这是用户类型结构:

这个类还包含一个表示操作集合的字段(这是因为一个用户类型可以有多个可以在系统上执行的操作),这个字段:

现在我问是否可以以与原始示例类似的方式使用流,以便创建包含所有用户类型的所有操作的数组。

是否可以?什么是聪明的解决方案?或者也许最好的方法是“旧样式”(将所有对象迭代到userTypes集中,然后将所有元素迭代到操作集中并手动添加到数组中?)。它会起作用,但是使用流的一个简洁优雅的解决方案可能是什么?(如果存在)

0 投票
1 回答
75 浏览

newrelic - 在新的 Relic 配置中禁用 CompletableFuture 检测

Java17 中存在与 CompletableFuture Instrumentation 相关的问题。为了使我的应用程序运行,我已禁用它。我在 newrelic.yml 中添加了以下几行:

似乎在 New relic 上什么都没有改变。由于我的无知,我不知道这到底意味着什么。

当我们在生产中部署我们的应用程序时,我是否会冒着遇到问题的风险?

0 投票
1 回答
50 浏览

java - 如何使用 Java Stream 修复此嵌套集合代码,以便从对象的属性创建字符串数组?

我正在开发一个 Java 应用程序,我正在尝试使用Stream概念实现以下行为。

我正在尝试做一些类似于我在示例中发现的事情,但我的用例似乎更复杂。这是原始示例:

基本上,它是从流开始创建一个数组。

按照我的情况。我有这个代表用户的主要用户DTO 类:

前面的 DTO 类包含表示用户类型集合的此字段(例如“ADMIN”、“READER”、“WRITER”等)。这是因为一个用户可以有多种类型:

这是用户类型结构:

这个类还包含一个表示操作集合的字段(这是因为一个用户类型可以有多个可以在系统上执行的操作),这个字段:

这是Operation类结构:

现在我问我是否可以以与原始示例类似的方式使用流,以便创建包含在所有用户类型中的所有操作的数组。

我尝试按照以下方式进行操作:

但是当执行此代码时,我得到以下异常:

我认为这是因为我必须创建一个 String 数组,但它正在处理不是 String 实例的Operation实例。理论上,我必须将当前Operation实例的name字段的值放入我的新数组中。

如何尝试修复此代码?

0 投票
1 回答
84 浏览

java - 不同的 jacoco 覆盖导致 github 操作环境

jacoco 覆盖率报告在 CI 环境中运行时是否有任何理由产生不同的结果?

迁移到 Java 17 后出现以下情况。当我运行./gradlew clean build报告时,会生成报告并且jacocoTestCoverageVerification不会失败。

但是,当在 github 运行器中执行相同的命令时,我得到了非常不同的结果,覆盖率报告也使用不同的覆盖率值创建,并且某些类只是未能通过覆盖率验证。

不幸的是,我无法提供代码片段,但我已经尝试过:

  • 在我的机器上运行 github 运行器,使用相同的 jdk,如果我只是在命令行中运行构建,它会产生不同的结果:(
  • 为测试任务添加 jvmargs noverify
  • 在容器而不是自托管中运行 github 操作,结果相同
  • 其他开发人员也在不同的机器上构建了该项目而没有错误
  • 运行与 ci 相同的构建命令

所以似乎 github action env 中的某些东西会产生这种行为。

版本:

  • jacoco 插件:0.8.7
  • 毕业7.3
  • 爪哇 17
0 投票
1 回答
98 浏览

java - 如何在 Java 中减少导入的重复性

除了在每个类文件中复制和粘贴相同的导入语句之外,还有一种方法可以将您需要的所有导入仅放在一个文件上,然后例如调用该文件而不是每次都粘贴:

您能否以某种方式将这些语句放在一个文件中,然后导入该文件,即。

0 投票
1 回答
34 浏览

java - 如何创建具有相同模型、颜色、字体和侦听器的 JTable 副本?

我正在制作一个需要使用许多 JTable 的程序。所以我需要多次克隆一个 JTable。克隆是指具有相同模型、相同 columnModel、相同字体大小、相同颜色等的副本。

我找到了如何克隆 jtable

但问题只是两者的文本是相同的。不是字体或颜色。

我也试过这个: -

但这也行不通。

我也试过: -

但这会起作用。但问题是对 的更改tm也会发生在ti.

有什么方法可以克隆具有所有属性的 jtable 吗?

0 投票
1 回答
11762 浏览

java - Spring boot 应用升级到 2.6.0 后由于循环依赖无法启动[无法解析的循环引用]

Spring Boot 升级报错

Spring boot应用升级到2.6.0后由于循环依赖无法启动

0 投票
1 回答
72 浏览

java - 更改一个 JTable 会更改 Java 中的其他 JTable

我正在制作一个需要许多 JTable 的程序。因此,对于设置字体、列大小等。我使用的是这种方法:

我正在使用这样的方法:-

像这样我还有4张桌子。

但问题是当我对 进行编辑时t1,JTablet2也在发生变化。

如果我输入

在 的第一个单元格中t1, 的第一个单元格t2也将是

我该如何解决这个问题,以使对t1的编辑不可见t2

编辑(调试细节):

即使这段代码也不起作用