本文详细介绍在Jupyter Notebook中运行JavaScript环境的方法。涵盖Anaconda安装后的常见DLL报错解决、PATH环境变量配置,以及通过ijavascript包实现Node.js环境支持。同时提供在VS Code中配置Jupyter Server以利用其智能提示功能,并演示如何在Notebook中初始化Node项目和使用模块。
此外,文章后续还涉及如何在 VS Code 中集成使用 Jupyter Notebook 的相关技巧。
安装 Anaconda
关于安装环节,建议直接下载并运行 msi 安装包即可完成 Anaconda 的部署,整个过程相对简单。
遇到报错,以及配置 Anaconda
在启动时可能会遇到如下错误提示:
D:\>jupyter notebook Traceback (most recent call last): File "C:\ProgramData\Anaconda3\Scripts\jupyter-notebook-script.py", line 6, in <module> from notebook.notebookapp import main File "C:\ProgramData\Anaconda3\lib\site-packages\notebook\notebookapp.py", line 49, in <module> from zmq.eventloop import ioloop File "C:\ProgramData\Anaconda3\lib\site-packages\zmq\__init__.py", line 47, in <module> from zmq import backend File "C:\ProgramData\Anaconda3\lib\site-packages\zmq\backend\__init__.py", line 40, in <module> reraise(*exc_info) File "C:\ProgramData\Anaconda3\lib\site-packages\zmq\utils\sixcerpt.py", line 34, in reraise raise value File "C:\ProgramData\Anaconda3\lib\site-packages\zmq\backend\__init__.py", line 27, in <module> _ns = select_backend(first) File "C:\ProgramData\Anaconda3\lib\site-packages\zmq\backend\select.py", line 28, in select_backend mod = __import__(name, fromlist=public_api) File "C:\ProgramData\Anaconda3\lib\site-packages\zmq\backend\cython\__init__.py", line 6, in <module> from . import (constants, error, message, context, ImportError: DLL load failed: The specified module could not be found.
最令人头疼的是出现 The specified module could not be found 这类错误。尽管 Stack Overflow 上有人建议下载额外的 DLL 文件,但依赖非官方 DLL 并非长久之计,也不推荐作为标准解决方案。
经过排查,此类问题通常源于 Anaconda 的环境变量配置不完整。解决方法是将 Anaconda 安装目录下 Library 中的 bin 文件夹路径添加到系统 PATH 变量中。
参考上述报错日志,对应的 bin 目录位于 C:\ProgramData\Anaconda3\Library\bin 路径下。
在 Windows 系统中手动配置 Anaconda 的环境变量略显繁琐,需要用户自行添加相关路径。以我的安装路径 C:\ProgramData\Anaconda3 为例,需要进行如下配置:
set PATH=%PATH%;C:\ProgramData\Anaconda3;C:\Anaconda3\ProgramData\Scripts\
或者,也可以手动打开 System Environment Variables 界面进行相应的路径更新操作。
配置完成后,PATH 变量中应当包含以下三个与 Anaconda 相关的路径:
C:\ProgramData\Anaconda3C:\Anaconda3\ProgramData\Scripts\C:\ProgramData\Anaconda3\Library\bin
完成配置后,建议在 CMD 命令行中测试运行 conda 命令。如果执行成功,说明大部分功能已可在 CMD 中直接使用,无需再专门打开 Conda Terminal。随后再次尝试运行 jyputer,之前的报错信息应当不再出现。
若上述配置步骤仍无法解决问题,则可能需要考虑重新安装软件。
在指定文件夹运行 Jupyter Notebook
若需在特定目录下启动 Jupyter Notebook,可先在 CMD 中切换至目标路径,然后执行启动命令。以 D 盘为例,操作如下:
> pushd D:\
# 直接运行 Jupyter Notebook 即可
> jupyter notebook
Jupyter Notebook 安装 JavaScript 环境
在 npm 仓库中有一个名为 ijavascript 的包可供使用。
ijavascript 旨在为 Jupyter Notebook 提供 JavaScript 核心运行支持,其安装过程十分简便。以 Anaconda 环境为例,安装步骤如下:
conda install nodejs
npm install -g ijavascript
ijsinstall
除了支持 Anaconda 版本外,该工具还兼容 Windows 原生环境、MacOS 以及 Linux 系统。
安装完成后重新运行 Jupyter Notebook,即可看到界面已支持新建基于 NodeJS 的笔记本环境:

进行一个简单的试运行测试:

在 VSC 中使用 Jupyter Notebook
首先,需确保已正确安装 Jupyter 插件。
接着,在 VS Code 中打开 Jupyter Notebook 文件:

为了成功运行环境,必须配置 Jupyter Server,否则默认环境无法加载 JavaScript 运行时。使用 VS Code 的主要优势在于其代码提示功能优于原生 Jupyter Notebook,当然这也可能与个人对快捷键的熟悉程度有关。
在 Jupyter Notebook 中使用 Node Module
可以直接使用 npm init 命令将当前根目录初始化为 Node 项目,之后便可正常引入模块:

需要注意的是,在引用变量时,若不确定其作用域或生命周期,最好使用 var 进行声明。因为该环境是全局的,若实验性地使用 const 声明可能会因无法修改已存在的绑定而报错。
此外,建议将变量声明分开书写,以避免因变量已存在而引发的冲突报错:

至此,关于在 Jupyter Notebook 中运行 JavaScript 的方法介绍完毕。如需了解更多相关内容,可搜索本站历史文章或继续浏览后续推荐内容,感谢大家的支持!