#scala #scala.js
#scala #scala.js
Вопрос:
Я сталкиваюсь с этой проблемой при обновлении с scala-js 0.6.x до 1.x.x, и проблема заключается в:-
с scala-js 0.6.x у меня была следующая настройка build.sbt:-
name := "untitled2"
version := "0.1"
scalaVersion := "2.13.3"
enablePlugins(JSDependenciesPlugin)
jsDependencies = "org.webjars.npm" % "opentelemetry__context-base" % "0.8.3" / "context.js" commonJSName "Context"
jsDependencies = "org.webjars.npm" % "opentelemetry__context-base" % "0.8.3" / "NoopContextManager.js" commonJSName "NoopContextManager" dependsOn "context.js"
scalaJSModuleKind := ModuleKind.CommonJSModule
scalaJSUseMainModuleInitializer := true
и основной класс:-
object Main extends App {
println("hello js")
}
и файла plugins.sbt:-
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "0.6.33")
когда я запускаю следующую команду sbt clean run, я получаю вывод как- привет js.
с scala-js 1.x.x у меня были следующие настройки build.sbt: —
name := "untitled2"
version := "0.1"
scalaVersion := "2.13.3"
enablePlugins(JSDependenciesPlugin)
jsDependencies = "org.webjars.npm" % "opentelemetry__context-base" % "0.8.3" / "context.js" commonJSName "Context"
jsDependencies = "org.webjars.npm" % "opentelemetry__context-base" % "0.8.3" / "NoopContextManager.js" commonJSName "NoopContextManager" dependsOn "context.js"
scalaJSLinkerConfig ~= { _.withModuleKind(ModuleKind.CommonJSModule) }
scalaJSUseMainModuleInitializer := true
с помощью файла plugins.sbt в виде:-
addSbtPlugin("org.scala-js" % "sbt-scalajs" % "1.1.1")
addSbtPlugin("org.scala-js" % "sbt-jsdependencies" % "1.0.2")
когда я пытаюсь выполнить ту же команду, что и sbt clean run, я получаю следующую ошибку:-
[error] org.scalajs.jsenv.ExternalJSRun$NonZeroExitException: exited with code 1
[error] at org.scalajs.jsenv.ExternalJSRun$$anon$1.run(ExternalJSRun.scala:186)
[error] stack trace is suppressed; run 'last Compile / run' for the full output
[error] (Compile / run) org.scalajs.jsenv.ExternalJSRun$NonZeroExitException: exited with code 1
[error] Total time: 3 s, completed 03-Sep-2020, 5:21:51 pm
internal/modules/cjs/loader.js:1083
throw err;
^
Error: Cannot find module './context'
Require stack:
- C:UsersUserAppDataLocalTemptmp-8158890692830924760NoopContextManager.js
- D:untitled2[stdin]
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1080:15)
at Function.Module._load (internal/modules/cjs/loader.js:923:27)
at Module.require (internal/modules/cjs/loader.js:1140:19)
at require (internal/modules/cjs/helpers.js:75:18)
at Object.<anonymous> (C:UsersUserAppDataLocalTemptmp-8158890692830924760NoopContextManager.js:18:19)
at Module._compile (internal/modules/cjs/loader.js:1251:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1272:10)
at Module.load (internal/modules/cjs/loader.js:1100:32)
at Function.Module._load (internal/modules/cjs/loader.js:962:14)
at Module.require (internal/modules/cjs/loader.js:1140:19) {
code: 'MODULE_NOT_FOUND',
requireStack: [
'C:\Users\User\AppData\Local\Temp\tmp-8158890692830924760NoopContextManager.js',
'D:\untitled2\[stdin]'
]
}
Может ли кто-нибудь помочь мне понять, в чем здесь проблема? И как я могу это решить?