问题标签 [java-16]

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 回答
80 浏览

java - 如何通过命令行创建 jar 文件?

假设我有这些 .java 文件:

  • 主类.java
  • 第二类.java
  • 酒吧类.java
  • FooClass.java

然后我把它们变成 .class 文件:

  • MainClass.class
  • 2ndClass.class
  • BarClass.class
  • FooClass.class

我如何使它成为一个 jar 文件,并让 MainClass.class 成为第一个被加载的文件?

0 投票
0 回答
36 浏览

java - 如何在 MacOS 中更改 java 默认目录?

Java安装usr/bin/java在我的机器下。由于此答案中发现的安全原因,我想将其设置为usr/local/bin/java以便我可以在必要时对其进行操作。我想了解如何实现这一点。

提前致谢。

0 投票
0 回答
43 浏览

java - Java 16 Robot.mouseMove 移动到错误的位置

我有一个旧项目(使用java 8),其中包含我想在项目中重用的部分代码,基于java 16

并且它不能正常工作java 16,即鼠标没有移动到指定点(java 8一切正常)。

经过几次实验,我认为这是因为 Windows 显示缩放(125%),因为我检查了屏幕尺寸:

并在java 8此返回正确的[width=1920,height=1080]

但在java 16我得到[width=1536,height=864]= [1920, 1080] / 1.25

我真的无法理解代码如何仅仅因为不同的 JDK 而产生不同的结果

我该如何解决?

0 投票
1 回答
1424 浏览

java - gephi 找不到带有 JDK 16 的 java 1.8 或更高版本

我已经安装了 JDK 16.0.1(文件夹 C:\Program Files\Java)并尝试运行 Gephi,但出现错误“找不到 java 1.8 或更高版本”所以我搜索了如何解决这个问题,每个答案都涉及到做某事使用JRE目录,所以我安装了JRE 8u291,它安装在与JDK相同的文件夹(C:\ Program Files \ Java)上,但解决方案说它应该在程序文件(x86)上,我试过了很多次我很生气,请帮忙

0 投票
1 回答
110 浏览

java - Windows 文件路径的 Maven/Java 问题

这里是 Java 和 Maven 的新手。我在JDK 16mvn install上的 Windows 设置上成功运行时遇到问题。该过程始终无法通过验证步骤。来自 Maven 的故障安全文件夹显示以下错误:

不过,该过程在 Mac 上运行良好。我已经尝试过更改编码,进行全新安装等,但无济于事。

知道如何解决这个问题吗?

0 投票
2 回答
3266 浏览

java - 为什么在 Java 16 的非静态内部类中允许使用静态方法?

我们知道可以使用外部类的实例来访问非静态内部类,因此静态方法在非静态类内部意义不大。但是从 Java 16 开始,在非静态内部类中允许使用静态方法。

为什么这个限制首先存在?为什么新版本允许这样做?

0 投票
2 回答
1793 浏览

java - 如何将 --illegal-access JVM 参数传递给 Spring Boot Maven 插件

从命令提示符运行时,我有一个运行良好的应用程序:

但是,这样配置我的 spring boot maven 插件pom.xml会给我同样的错误,就像我在没有该illegal-access=permit部分的情况下运行我的 cmd 一样,告诉我它被忽略了:

我究竟做错了什么?illegal-access=permit这个应用程序在 java 14 中运行良好,我正在升级到 java 16。除了由于缺少JVM 参数而导致 intelliJ 无法在调试模式下启动它之外,一切仍然运行良好。

0 投票
1 回答
366 浏览

java - Maven - NoSuchMethodError: void com.google.common.base.Preconditions.checkArgument(boolean, java.lang.String, java.lang.Object)

我面临 Maven 和 Java 16 的问题。

问题

当我试图用 maven 打包我的项目时mvn package,我收到了这个错误:

按照这个网站带来的解决方案,我修改了符号链接:

修改前

修复程序的应用

修改后

但是,这会导致一个新的错误:

这里的关键字是NoSuchMethodError关于com.google.common.base.Preconditions.checkArgument(boolean, java.lang.String, java.lang.Object)函数的,这似乎是缺失的。

从@Menghe提出并回答的这个问题中,我尝试重新安装maven,但它没有解决问题。

我的配置

软件 版本
Ubuntu 20.04.1
爪哇 16.0.2
马文 3.6.3

有没有可能得到一个建议?

在此先感谢您的帮助。

0 投票
1 回答
1416 浏览

java - 如何修复tomcat9中“不支持的类文件主要版本60”?

我有一个 Maven 项目。它是用 Java 16 编写的。我安装了 Java 16 JDK。

当我使用 dockerfile 构建它时,一切正常,但是当我运行 docker 并继续我的项目 url 时,我得到了一个“不支持的类文件主要版本 60”。

是否可以在 tomcat 或其他东西上运行 java 16 项目?

这是我的一些文件:

Docker文件:

还有我的 pom.xml:

Tomcat日志:

在 docker exec 之后从 api 容器记录:

0 投票
1 回答
204 浏览

java - Java 16 记录 BigDecimal 等于和哈希码

我们在日常项目中使用 Lombok,我喜欢它的简洁性。我们有一个 BigDecimal 属性的基调,并通过一些努力使它们忽略了 Lombok 生成的 equals 和 hashCode 方法中的比例。有没有办法在 Java 16 中引入的新记录类中做到这一点?