admin管理员组文章数量:1794759
【Scala 教程】Jupyter notebook 和 Jupyter lab 中配置 Scala 交互式编程环境
原文首发于个人站点:【Scala 教程】Jupyter notebook 中配置 Scala 交互式编程环境 微信公众号:【DreamHub】
背景对于初学者入门 Scala 编程,如果在学习过程中需要编写一些代码片段来实操 Scala 语法的时候是怎么测试的呢?对于菜鸡的我起初只想到了两种方法:
- Scala Terminal:在终端中进行交互。
- IntelliJ IDEA:IDE中编写代码片段。
在实践的时候就慢慢发现上述两种的方法的弊端:Scala Terminal 中测试语法没有问题但不能保存语法介绍和说明,遗忘之后不能再次查询;IDEA 非常强大但对于初学者测试代码片段就有点杀鸡用牛刀的感觉(PS:打开IDEA就写一小段代码也太浪费电脑资源了😂)!因此是否存在高性价比的工具来解决这问题呢?答案是有的!
类比于python的学习,是否想起有一款 jupyter notebook 交互编程环境呢?Jupyter notebook中编写python脚本实时交互可视化太爽了,如果jupyter notebook 能支持 scala 语法多么完美啊!心里一想然后一搜,卧槽!真有!开源大佬牛鼻!!!传送门直达~ 本文就介绍如何在jupyter notebook 中配置 scala 交互式编程环境。
配置流程查看scala 版本,例如我安装的是scala 2.13.1: 在源库中搜索发现almond v0.8.2已支持scala 2.13.1 ,Release version:
创建文件夹almond并在终端内打开。
在终端中设置 scala 和 almond 版本;
> set SCALA_VERSION=2.13.1 > set ALMOND_VERSION=0.9.1在终端中通过coursier下载launcher,官网命令会报错:
> bitsadmin /transfer downloadCoursierCli git.io/coursier-cli "%cd%\\coursier" > bitsadmin /transfer downloadCoursierBat git.io/coursier-bat "%cd%\\coursier.bat" > .\\coursier bootstrap -r jitpack -i user -I user:sh.almond:scala-kernel-api_%SCALA_VERSION%:%ALMOND_VERSION% sh.almond:scala-kernel_%SCALA_VERSION%:%ALMOND_VERSION% -o almond > .\\almond --install终端中安装 almond
.\\almond --install终端中查看已安装kernel:jupyter kernelspec list
打开 jupyter notebook 或者 jupyter lab 发现都可以使用scala kernel;
安装完成后可以删除almond文件夹;
安装过程参考官网:almond.sh/docs/quick-start-install
填坑指南bitsadmin /transfer downloadCoursierCli git.io/coursier-cli "%cd%\\coursier"命令执行报错: unable to add file - 0X80070057: 原因:bitsadmin 命令找不到相对路径! 方法:修改命令参数为绝对路径可以下载!例如我的路径:bitsadmin /transfer downloadCoursierCli git.io/coursier-cli "d:\\almond\\coursier"
.\\coursier bootstrap ***命令报错; 原因与上述错误类似。 方法:修改命令为版本号:
.\\coursier bootstrap ***报错:error fetching artifacts *** 原因:文件下载校验码错误,重新下载对应的文件。 方法:打开下载错误的文件删除重新执行命令下载!
吐槽下载速度真是慢,windows配置问题真是多,折腾了一下午,心累!
联系作者版权声明:本文标题:【Scala 教程】Jupyter notebook 和 Jupyter lab 中配置 Scala 交互式编程环境 内容由林淑君副主任自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.xiehuijuan.com/baike/1686753753a98516.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论