【发布时间】:2021-02-11 16:18:16
【问题描述】:
我从sbt-scalajs 0.6.x 升级到 1.2.0 时遇到了这个问题,问题是:-
使用sbt-scalajs v0.6.26(和sbt-scalajs-bundler v0.14.0),我启用了jsdom 对测试的支持:
requireJsDomEnv in Test := true
测试套件运行良好。
但是有了sbt-scalajs v1.2.0(和sbt-scalajs-bundler v0.18.0),我也启用了jsdom对测试的支持:
requireJsDomEnv in Test := true
但这给了我以下错误:
[info] Writing and bundling the test loader
webpack:///./node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js?:21
exports._globalThis = typeof globalThis === 'object' ? globalThis : window;
^
ReferenceError: window is not defined
at eval (webpack:///./node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js?:21:69)
at Object../node_modules/@opentelemetry/api/build/src/platform/browser/globalThis.js
但是,当我删除 requireJsDomEnv in Test := true 设置时,测试套件运行良好。我需要了解为什么会这样?我该如何解决?
我正在使用:
scala -> 2.13.3
Java -> OpenJDK 14.0.2
【问题讨论】:
-
您能否一次升级一个东西,而不是在 sbt-scalajs 和 sbt-scalajs-bundler 中进行相对较大的跳跃,以隔离问题?从 (0.6.26, 0.14.0) 我建议以下升级路径: (0.6.26, 0.14.0) -> (0.6.33, 0.14.0) -> (0.6.33, 0.18.0) - > (1.2.0, 0.18.0),在每次独立升级之间运行测试。
标签: scala scala.js scalajs-bundler