Databricks dbutils ขว้าง NullPointerException

Oct 07 2020

พยายามอ่านข้อมูลลับจาก Azure Key Vault โดยใช้ databricks dbutils แต่พบข้อยกเว้นดังต่อไปนี้:

    OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=512m; support was removed in 8.0
Warning: Ignoring non-Spark config property: eventLog.rolloverIntervalSeconds
Exception in thread "main" java.lang.NullPointerException
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at com.databricks.dbutils_v1.DBUtilsHolder$$anon$1.invoke(DBUtilsHolder.scala:17)

ด้านล่างนี้คือข้อมูลโค้ด:

Object secret = DBUtilsHolder.dbutils().secrets().get("<scope>", "<key>");
System.out.println("secret " + secret.toString());

ด้านล่างคือปอม:

<dependencies>
    <!-- https://mvnrepository.com/artifact/org.apache.spark/spark-core -->
    <dependency>
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-core_2.11</artifactId>
      <version>2.4.5</version>
      <scope>provided</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/org.apache.spark/spark-sql -->
    <dependency>
      <groupId>org.apache.spark</groupId>
      <artifactId>spark-sql_2.11</artifactId>
      <version>2.4.5</version>
      <scope>provided</scope>
    </dependency>
    <dependency>
      <groupId>io.airlift</groupId>
      <artifactId>airline</artifactId>
      <version>0.8</version>
    </dependency>
    <dependency>
      <groupId>org.projectlombok</groupId>
      <artifactId>lombok</artifactId>
      <version>1.18.12</version>
      <scope>provided</scope>
    </dependency>
    <!-- https://mvnrepository.com/artifact/com.databricks/dbutils-api -->
    <dependency>
      <groupId>com.databricks</groupId>
      <artifactId>dbutils-api_2.11</artifactId>
      <version>0.0.4</version>
      <scope>provided</scope>
    </dependency>
<dependencies>

ล้มเหลวเมื่อเรียกใช้จาก Databricks เป็นงานส่งประกายไฟ แต่ทำงานได้เมื่อพยายามใช้ตัวเลือก Set Jar

คำตอบ

marat Oct 12 2020 at 03:30

ตามเอกสารนี้ Databricks Utilities ไม่พร้อมใช้งานสำหรับงานส่งประกายไฟ หากคุณต้องการใช้ Databricks Utilities ให้ใช้งาน JAR แทน