在 Neo4J 3.5.x 中使用 Java 运行时 11
Neo4j 3.5.x 支持 Java 11 作为运行时,但自定义代码仍应针对 Java 8 编译。作为最佳实践,建议在受支持的组件(虚拟机管理程序、操作系统、Java 虚拟机)上维护您的基础设施环境。在本例中,我们将展示如何在 Linux 上将 Java JDK 从版本 8 升级到 Java JDK 11。
Java JDK 11 安装
第一步是安装 Java 11,您可以参考所选供应商的说明。我们建议使用 JDK 以便在生产环境中运行 Neo4j。与 Neo4j 支持联系时,可能需要使用 Java 诊断命令。
-
neo4j-admin report命令需要 JDK。 -
jstack或jmap将堆内存转储到文件,可用于排查问题。 -
jfr:用于从运行中的 Java 应用程序收集诊断和分析数据的分析工具。自 Java 11 起免费提供。
此阶段仍使用 Java 8。允许在同一机器上安装多个 JVM。
java -version 仍会显示 Java 8。
切换为默认的 Java 11
要默认使用 Java 11 运行时,
对于 RedHat、CentOS、Fedora、Amazon AMI:运行 sudo alternatives --config java;对于基于 Debian 的系统,如 Debian、Ubuntu、Suse:运行 sudo update-alternatives --config java
选择正确的版本并按回车。本示例中有 2 个已安装的二进制文件提供 'java'。
$ sudo alternatives --config java
Selection Command
1 java-1.8.0-openjdk.x86_64 (/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.amzn2.0.1.x86_64/jre/bin/java)
2 /usr/lib/jvm/java-11-amazon-corretto/bin/java
选择第二个选项并按回车进行确认。
java -version 现在应显示 Java 11。
编辑 Neo4J.conf
-
注释或删除以下行
dbms.logs.gc.options=-XX:+PrintGCDetails -XX:+PrintGCDateStamps -XX:+PrintGCApplicationStoppedTime -XX:+PrintPromotionFailure -XX:+PrintTenuringDistribution
-
取消注释以下设置
dbms.logs.gc.options=-Xlog:gc,safepoint,age=trace
启动 Neo4J
您会立即在 neo4j.log 中看到 WARNING 消息,您可以安全地忽略它们,如下所示。
WARNING: Please consider reporting this to the maintainers of org.eclipse.collections.impl.utility.ArrayListIterate WARNING: Use --illegal-access=warn to enable warnings of further illegal reflective access operations WARNING: All illegal access operations will be denied in a future release
此页面有帮助吗?