无法使私有 java.nio.DirectByteBuffer(long,int) 可访问

ant*_*o12 11 java databricks databricks-connect

我正在使用 Python 通过databricks-connect. 在墙后面,这使用了 Spark,它确实是基于 java 的,所以为了使用它,我需要 java。JDK已下载(版本14),设置为JAVA_HOME env,但是当我运行代码时,出现以下错误:

引起原因:java.lang.reflect.InaccessibleObjectException:无法使私有java.nio.DirectByteBuffer(long,int)可访问:模块java.base不会“打开java.nio”到未命名模块@bccb269

这是崩溃的代码

from pyspark.sql import SparkSession
spark = SparkSession.builder.getOrCreate()
Run Code Online (Sandbox Code Playgroud)

我用谷歌搜索但找不到这个错误,我认为这不是我第一次遇到。任何想法这个错误意味着什么以及如何修复它?

Ale*_*Ott 12

Databricks 运行时和 databricks-connect 不适用于 Java 14。只有 DBR 10.x 对 Java 11 有实验性支持,但我怀疑 databricks-connect 是否支持它。

您需要安装 Java 8 才能使用 databricks-connect。