我正在使用shadow-cljs和yarn开发ClojureScript项目。当我将REPL连接到远程nREPL服务器时,所有操作都正常,除了我尝试加载依赖于使用web worker线程的js库的命名空间时。当发生这种情况时,我会遇到以下错误
------ 处理REPL错误 ----------------------------------------------------
(require '["firebase-admin" :as admin])
所需的JS依赖项"worker_threads"不可用,它由"node_modules/write-file-atomic/index.js"需要。
依赖关系跟踪
admin/fire/auth.cljs
node_modules/firebase-admin/lib/index.js
node_modules/firebase-admin/lib/default-namespace.js
node_modules/firebase-admin/lib/firebase-namespace.js
node_modules/firebase-admin/lib/firebase-app.js
node_modules/firebase-admin/lib/storage/storage.js
node_modules/@google-cloud/storage/build/src/index.js
node_modules/@google-cloud/storage/build/src/bucket.js
node_modules/@google-cloud/storage/build/src/file.js
node_modules/gcs-resumable-upload/build/src/index.js
node_modules/configstore/index.js
node_modules/write-file-atomic/index.js
在以下位置搜索了npm包
/Users/mbastian/workspace/myproject/node_modules
详见:https://shadow-cljs.github.io/docs/UsersGuide.html#npm-install
通过尝试调用命令(require '["firebase-admin" :as admin])
可以轻松重现问题。
firebase-admin 已安装。请注意,缺失的库是"worker_threads",而不是firebase-admin。
worker_threads 是内置到 node 中的新节点包,自 node 12 版本以来可用。我正在使用 v15.5.1。
有什么想法可以解决这个问题吗?按照 Thomas Heller 的说法,这可能是 bug。