2024年Clojure调查!分享您的想法。

欢迎!有关如何使用此网站的更多信息,请参阅关于页面。

0
ClojureScript

我正在使用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。

1 答案

0

worker_threads 是一个新的节点包,之前不在 shadow-cljs 的内部列表中。它在版本 2.11.12 中添加。

...