为 Snowpark Scala 设置 Visual Studio Code

本主题介绍如何为 Snowpark 设置 Visual Studio Code。

本主题内容:

为 Scala 开发设置 Visual Studio Code

为便于在 Visual Studio Code 中编写 Scala 代码,请安装 ` Metals 扩展程序 <https://scalameta.org/metals/docs/editors/vscode.html (https://scalameta.org/metals/docs/editors/vscode.html)>`_。Metals 扩展程序提供代码补全、参数提示以及有关类型和方法的信息。

要安装 Metals 扩展程序,请执行以下步骤:

  1. 在 ` 窗口左侧 _ :extui:`Activity Bar 中,点击 Extensions 图标。

    Visual Studio Code 中活动栏中的 Extensions 图标

    (如果 Activity Bar 没有显示,请确保已选中 View » Appearance » Show Activity Bar。)

    此时将显示 Extensions 视图,它允许您浏览和安装 Extensions Marketplace 中的扩展程序。

  2. Search Extensions in Marketplace 的搜索框中,搜索该词:

    metals
    
    Copy
  3. 在搜索结果中找到 Scala (Metals) 扩展程序,然后点击 Install

有关 Scala (Metals) 扩展程序的更多信息,请参阅 ` Metals 文档 <https://scalameta.org/metals/docs/editors/overview.html (https://scalameta.org/metals/docs/editors/overview.html)>`_ 中的 ` Visual Studio Code <https://scalameta.org/metals/docs/editors/vscode.html (https://scalameta.org/metals/docs/editors/vscode.html)>`_。

在 Visual Studio Code 中创建新的 Scala 项目

接下来,为 Snowpark 创建一个新的 Scala 项目。

  1. 为项目创建工作区目录。例如:

    mkdir snowpark_projects
    
    Copy

    该目录将包含您创建的项目子目录。

  2. 在 Visual Studio Code 中,选择 File » Open,选择您创建的目录,然后点击 Open

  3. 在左侧的 Activity Bar 中,点击 Metals 图标。

    Visual Studio Code 中活动栏中的 Metals 扩展图标
  4. Side Bar 中的 Packages 下(位于 Activity Bar 的 ` 右侧 _),点击 :extui:`New Scala Project 按钮。

    用于新建 Scala 项目 Visual Studio Code 的按钮
  5. 选择要用于新项目的模板(如 scala/hello-world.g8)。

  6. 选择之前创建的工作区目录 (snowpark_projects),然后点击 Ok

  7. 输入新项目的名称(如 hello_snowpark)。

  8. 在窗口右下角的对话框提示时,点击 Yes 以在新窗口中打开新项目。

    提示您在新窗口中打开新项目的对话框
  9. 在窗口右下角的对话框提示时,点击 Import build 以 ` 导入构建文件 <https://scalameta.org/metals/docs/editors/vscode.html#importing-a-build (https://scalameta.org/metals/docs/editors/vscode.html#importing-a-build)>`_。

    提示您为新项目导入构建的对话框

为 Snowpark 配置 Visual Studio Code 项目

接下来,为 Snowpark 配置项目。

  1. 在 ` 窗口左侧 _ :extui:`Activity Bar 中,确保选中 Explorer 图标(顶部第一个图标)。

    在 Visual Studio Code 的活动栏中选择的 Explorer 图标
  2. Side Bar 中的 Explorer 下(位于 Activity Bar 的 ` 右侧 _),在项目下选择 ``build.sbt` 文件以进行编辑。

    选择 build.sbt 文件以编辑

    在项目的 build.sbt 文件中,进行以下变更:

    1. 如果 scalaVersion 设置与计划使用的版本不匹配,请更新设置。例如:

      scalaVersion := "2.12.13"
      
      Copy

      请注意,您必须使用 支持与 Snowpark 库配合使用的 Scala 版本

    2. 将 Snowpark 库添加到依赖项列表中。例如:

      libraryDependencies += "com.snowflake" % "snowpark" % "1.15.0"
  3. 完成这些变更后,选择 File » Save 保存变更。

  4. 在窗口右下角的对话框提示时,点击 Import changes 以 ` 重新导入文件 <https://scalameta.org/metals/docs/editors/vscode.html#importing-changes (https://scalameta.org/metals/docs/editors/vscode.html#importing-changes)>`_。

    提示您重新导入 build.sbt 文件的对话框

验证 Visual Studio Code 项目配置

要验证您是否已将项目配置为使用 Snowpark,请运行简单的 Snowpark 代码示例。

  1. 在 ` 窗口左侧 _ :extui:`Activity Bar 中,确保选中 Explorer 图标(顶部第一个图标)。

    在 Visual Studio Code 的活动栏中选择的 Explorer 图标
  2. Side Bar 中的 Explorer 下,在项目下展开 src/main/scala 文件夹,然后选择并打开 Main.scala 文件。

  3. Main.scala 文件中,将内容替换为以下代码:

    import com.snowflake.snowpark._
    import com.snowflake.snowpark.functions._
    
    object Main {
      def main(args: Array[String]): Unit = {
        // Replace the <placeholders> below.
        val configs = Map (
          "URL" -> "https://<account_identifier>.snowflakecomputing.cn:443",
          "USER" -> "<user name>",
          "PASSWORD" -> "<password>",
          "ROLE" -> "<role name>",
          "WAREHOUSE" -> "<warehouse name>",
          "DB" -> "<database name>",
          "SCHEMA" -> "<schema name>"
        )
        val session = Session.builder.configs(configs).create
        session.sql("show tables").show()
      }
    }
    
    Copy

    请注意以下事项:

    • <placeholders> 替换为您用于连接到 Snowflake 的值。

    • 对于 <account_identifier>,请指定您的 账户标识符

    • 如果您更喜欢使用 密钥对身份验证,则执行以下操作:

      • PASSWORD 替换为 PRIVATE_KEY_FILE,并将其设置为私钥文件的路径。

      • 如果私钥已加密,则必须将 PRIVATE_KEY_FILE_PWD 设置为用于解密私钥的密码。

      作为设置 PRIVATE_KEY_FILEPRIVATE_KEY_FILE_PWD 的替代方法,您可以将 PRIVATEKEY 属性设置为私钥文件中 未加密私钥 的字符串值。

      • 例如,如果私钥文件未加密,请将其设置为文件中密钥的值(不带 -----BEGIN PRIVATE KEY----------END PRIVATE KEY----- 页眉和页脚,也没有行尾)。

      • 请注意,如果私钥已加密,则必须先解密私钥,然后才能将其设置为 PRIVATEKEY 属性的值。

  4. 点击 Object 行上方的 run 来运行示例。

如果出现以下错误消息:

Run session not started
Copy

检查窗口底部的 Problems 选项卡。如果窗口底部未显示该选项卡,请从菜单中选择 View > Problems 项。

语言: 中文