You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Notebook外(如Eclipse等IDE)使用DataBricks dbutils Jar包?

在本地IDE中使用Databricks Secrets的解决方案

刚巧我之前帮团队解决过类似的问题——如果你在Eclipse或者其他本地IDE里开发,想调用Databricks的dbutils.secrets.get()这类方法,肯定会碰壁:SecretUtil API只在Databricks Notebook环境里提供支持,本地IDE没有对应的运行上下文,直接用会报错。

别担心,这个场景下我们可以用com.databricks官方提供的SDK jar包来实现同样的功能,下面是具体的操作指南:

1. 引入Jar包依赖

首先要把Databricks的SDK jar包引入到你的项目中。如果用Maven管理项目,可以在pom.xml里添加以下依赖(记得用最新的稳定版本):

<dependency>
    <groupId>com.databricks</groupId>
    <artifactId>databricks-sdk-java</artifactId>
    <version>0.17.0</version>
</dependency>

如果是手动导入,直接从Databricks的官方仓库下载对应jar包添加到项目的类路径里就行。

2. 编写代码获取Secrets

引入jar包后,就可以通过SDK来创建客户端,获取secrets了。这里给你一个Java示例:

import com.databricks.sdk.core.DatabricksConfig;
import com.databricks.sdk.service.workspace.SecretsService;

public class LocalDatabricksSecrets {
    public static void main(String[] args) {
        // 配置Databricks工作区信息
        DatabricksConfig config = new DatabricksConfig()
                .setHost("https://<your-databricks-workspace-url>")
                .setToken("<your-personal-access-token>");

        // 初始化Secrets服务客户端
        SecretsService secretsClient = SecretsService.create(config);

        // 获取指定scope和key的secret
        String secretValue = secretsClient.getSecret("<your-secret-scope>", "<your-secret-key>");
        
        // 后续可以用这个secret值做你需要的操作
        System.out.println("Successfully retrieved secret!");
    }
}

注意事项:

  • 替换代码中的占位符:<your-databricks-workspace-url>是你的Databricks工作区地址,<your-personal-access-token>是你在Databricks生成的个人访问令牌(需要有对应secret scope的访问权限)
  • 确保本地网络能正常访问你的Databricks工作区
  • 不要把令牌硬编码在代码里,最好通过环境变量或者本地配置文件来管理,避免泄露

这样就能在本地IDE里顺利获取Databricks的secrets了,完全不需要依赖Notebook里的dbutils工具。


内容的提问来源于stack exchange,提问作者Nikhil Redij

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.14 06:59:47