问题标签 [java-11]

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

java - 如何将多行字符串变为单行字符串?

我有以下字符串

我想在一行中使用上面的字符串

我试过了

并且

两者都不起作用。

0 投票
40 回答
1002977 浏览

java - 如何解决 java.lang.NoClassDefFoundError: javax/xml/bind/JAXBException

我有一些使用 JAXB API 类的代码,这些类在 Java 6/7/8 中作为 JDK 的一部分提供。当我使用 Java 9 运行相同的代码时,在运行时出现错误,表明找不到 JAXB 类。

JAXB 类自 Java 6 起就作为 JDK 的一部分提供,那么为什么 Java 9 不再能找到这些类呢?

0 投票
4 回答
773 浏览

java - 在最终公共类Java中修改最终静态变量

我有一个关于修改最终公共课程的快速问题。根据一些研究,似乎最终的公共类不能被继承或实现。我的目标是在这个最终的公共类中更改一个最终的静态变量。

类名是:公共最终类Utils

我想摆脱authorization这个领域DISALLOWED_HEADERS_SET。有没有办法做到这一点?

我听说反射是修改类的一种方法。这是一个Apress/java-9-revealed to a github,它似乎揭示了类的内容


此线程(问题)已被确定为 XY 问题。我将尝试用更多信息解释为什么我想要解决上述问题。在深入探讨促使我提出这个问题的原因之前,我将介绍一下这个问题目前所处的现状。

重要的是要了解,Clevertap已经向Oracle提出了这个问题。如果您关注 Oracle 链接,您可以看到此问题已被确认并更新为Jdk 11. 希望 Oracle 将这个固定的源代码应用到即将到来Java 10的. 话虽这么说,唯一的解决方案是使用clevertap中的开放线程建议的反射。Jdk 9Java 9

现在,我将简要解释一下我所取得的成就并试图弄清楚。我一直在研究我一直在开发的框架,用于使用 Java 语言向 APNs 发送推送通知。除了一项功能外,一切正常。

[我将在不久的将来通过 GitHub 为那些试图在不依赖第三方框架(例如 Jetty、Netty 或 okhttp)的情况下向 APNs 发送通知的人分享这个框架。]

当我尝试使用令牌作为身份验证方式发送通知时,问题就出现了。我已按照Apple提供的说明成功创建了令牌。我所要做的就是使用authorization键和bearer <token>值设置请求标头。但是,当我使用.setHeader派生自jdk9.incubator.httpclient模块来设置这些值时,它会自动省略该字段。如前所述,authorization是其中的一部分,DISALLOWED_HEADERS_SET显然是不允许的。如果用户尝试将“授权”设置为请求头字段的键值,则会将其删除。如果您有任何解决此问题的建议。对于面临同样问题的其他人来说,这将是很棒的和有帮助的。


坏消息伙计们......jdk 9.0.4删除了setSystemHeader方法,所以如果你想使用reflection,你需要使用Jdk 9.0.1


如前所述,我创建了用于使用纯 java 代码发送通知的 java 库并将其推送到github。我使用了基于jdk10我发布的应用程序的旧版本。旧版本仅支持 tls 连接。现在基于的当前版本jdk11同时支持 tls 和基于令牌的身份验证,用于向 APNs 发送推送通知。

0 投票
4 回答
2068 浏览

java - Java 9:AES-GCM 性能

我运行了一个简单的测试来测量Java 9中的AES-GCM性能,方法是在循环中加密字节缓冲区。结果有些混乱。本机(硬件)加速似乎有效 - 但并非总是如此。进一步来说,

  1. 在循环中加密 1MB 缓冲区时,前约 50 秒的速度为约 60 MB/秒。然后它跳到 1100 MB/秒,并保持在那里。JVM 是否决定在 50 秒(或 3GB 数据)后激活硬件加速?可以配置吗?我在哪里可以了解新的AES-GCM实施(除了这里)。
  2. 加密 100MB 缓冲区时,硬件加速根本不会启动。速度为 60 MB/秒。

我的测试代码如下所示:

2019 年 2 月更新:已修改 HotSpot 以解决此问题。该修复适用于 Java 13,并且还向后移植到 Java 11 和 12。

https://bugs.java.com/bugdatabase/view_bug.do?bug_id=JDK-8201633 , https://hg.openjdk.java.net/jdk/jdk/rev/f35a8aaabcb9

2019 年 7 月 16 日更新:新发布的 Java 版本(Java 11.0.4)修复了这个问题。

0 投票
10 回答
232672 浏览

java - 无法使用 Maven 编译简单的 Java 10 / Java 11 项目

我有一个简单的 Maven 项目:

pom.xml:

当我通过 构建项目时mvn -X install -DskipTests=true,它失败了:

有没有办法来解决这个问题?

0 投票
1 回答
4871 浏览

java - Java11 中找不到 jdk.incubator.httpclient 模块

使用JDK/11 的早期访问版本来编译基于 Java-9 的现有代码,该代码使用 VM 参数

解决HTTP/2 客户端孵化器模块 现在会出现编译错误

未找到模块:jdk.incubator.httpclient

Java 版本详细信息:-

0 投票
1 回答
2651 浏览

java - Java 11:Lambda 参数的局部变量语法 - 应用程序

总的来说,我对Java-11很好奇,但特别是JEP:323,它计划将var声明添加到 Lambda 操作变量中。

此处很好地讨论了此功能背后的动机。考虑文章中的以下引用:

final 修饰符的用法对我来说很清楚,并且符合不变性最佳实践。

但是,我不确定注释。能够注释 lambda 隐式参数有什么好处?

您能否提供一个在 lambda 操作变量上使用注释的事实上的有益示例?不是意见问题,而是作为使用此功能时更具可读性或效率的代码的实际示例。

0 投票
1 回答
555 浏览

java - JEP 12:预览语言和 VM 功能 - 可能的使用见证

我在搜索 JDK 12 时遇到了JEP 12 并且很感兴趣。

简介: 预览语言或 VM 功能是 Java SE 平台的一项新功能,它完全指定、完全实现,但不是永久性的。它在 JDK 功能版本中提供,可根据实际使用情况激发开发人员的反馈;这可能会导致它在未来的 Java SE 平台中成为永久性的。

在回答了这个问题之后,我只想问以下问题:

  • 你能提供这个 JEP 的使用示例——在代码中加入新语言和/或 VM 特性吗?
0 投票
2 回答
5211 浏览

java - NoClassDefFoundError:由于缺少依赖项 javax/xml/bind/Unmarshaller,无法加载类 groovy.xml.jaxb.JaxbGroovyMethods

我们的 Gradle 构建必须 使用--add-modules=java.xml.bind,java.activation,java.xml.ws.annotationJDK9 /10 构建。现在效果很好,但这些模块已被弃用。options.compilerArgsJavaCompile

我想为可能会删除这些模块的 JDK11 做准备。

我已经尝试添加javax.xml.bind:jaxb-api:2.3.0,com.sun.xml.bind:jaxb-impl:2.3.0com.sun.xml.bind:jaxb-core:2.3.0tocompile以及in runtime,但我仍然得到.classpathbuildscriptNoClassDefFoundError

我错过了什么?

对于每个构建,报告的缺失类并不是 100% 相同:它在抱怨javax/xml/bind/JAXBContextjavax/xml/bind/Unmarshaller之间切换javax/xml/bind/Marshaller

0 投票
1 回答
2456 浏览

java - sun.rmi.server 和 sun.rmi.transport - Java 10 不支持 jdk 内部 API

我目前正在使用 Java 8 并希望迁移到 Java 11。

jdeps -P -jdkinternals ...Java 10 不支持下面列出的命令。

有人可以帮我寻找上述课程的替代品吗?

JDK 11 中 JDEPS 的输出:

谢谢。