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

Scala内核Jupyter notebook的Snowpark环境导入命令报错如何解决

Snowpark Scala内核Jupyter Notebook两类报错解决方案

报错1:执行import org.pmml4s.model.Model提示「object pmml4s is not a member of package org」

报错原因

Scala内核运行环境的类路径中未引入pmml4s相关依赖,编译时无法定位到对应包。

解决步骤

  • 先确认你使用的Snowpark版本、Scala版本和pmml4s版本互相兼容,匹配对应稳定版即可
  • 如果你使用的是Almond(Scala Jupyter主流内核),在导入语句前执行依赖引入命令:import $ivy.org.pmml4s::pmml4s:0.9.16``,将版本号替换为和你环境匹配的版本
  • 如果是Snowpark专属依赖管理场景,可使用Snowpark提供的add_package方法引入pmml4s的jar包,或提前将对应jar包上传至Snowpark会话的依赖路径,重启内核后再执行导入语句即可

报错2:编写package algorithms提示「expected end-of-input」

报错原因

Jupyter的Scala内核为交互式运行环境,默认不支持在单元格顶层直接声明package,package声明仅允许放在.scala源码文件的顶层,交互式单元格的代码默认在匿名上下文中运行,顶层写package会触发语法校验错误。

解决步骤

  • 若仅需要做代码命名空间隔离,使用object包裹代码替代package即可,示例如下:
object algorithms {
  // 类、方法、变量均定义在object内部
  class SampleAlgo {
    // 类实现逻辑
  }
  def run(params: Map[String, Any]) = {
    // 方法实现逻辑
  }
}
// 调用方式:algorithms.run(Map(...)) 、val algo = new algorithms.SampleAlgo()
  • 若必须使用package结构,将包含package声明的代码写入独立的.scala源文件中,再在Jupyter单元格中通过import $file.你的源文件名引入整个文件内容即可

内容的提问来源于stack exchange,提问作者priya sengar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 06:42:01