gpt4 book ai didi

scala - 如何在 Scala JS build.sbt 中设置主类?

转载 作者:行者123 更新时间:2023-12-04 11:49:33 25 4
gpt4 key购买 nike

如何在 ScalaJS build.sbt 中设置 mainClass?

目前我在 build.sbt 中设置主类是这样的(见最后一行):

enablePlugins(ScalaJSPlugin)

name := "ScalaJS-Exp"

scalaVersion := "2.11.7"

libraryDependencies += "org.scala-js" %%% "scalajs-dom" % "0.8.1"
libraryDependencies += "be.doeraene" %%% "scalajs-jquery" % "0.8.0"

jsDependencies += RuntimeDOM

skip in packageJSDependencies := false

//scalaJSStage in Global := FastOptStage

// uTest settings
libraryDependencies ++= Seq(
"com.lihaoyi" %%% "utest" % "0.3.1" % "test",
"com.lihaoyi" %%% "scalatags" % "0.5.4",
// Javascript libs
"org.webjars" % "jquery" % "1.10.2",
"org.webjars" % "jquery-ui" % "1.11.4"
)

jsDependencies ++= Seq(
"org.webjars" % "jquery" % "1.10.2" / "jquery.js",
"org.webjars" % "jquery-ui" % "1.11.4" / "jquery-ui.js" dependsOn "jquery.js"
)

testFrameworks += new TestFramework("utest.runner.Framework")

persistLauncher in Compile := true
persistLauncher in Test := false

mainClass := Some("htmlExp.HtmlExpApp")

当我运行 sbt 时,我得到:
[warn] Multiple main classes detected.  Run 'show discoveredMainClasses' to see the list
[trace] Stack trace suppressed: run last compile:packageScalaJSLauncher for the full output.
[error] (compile:packageScalaJSLauncher) Cannot write launcher file, since there is no or multiple mainClasses
[error] Total time: 1 s, completed Jan 23, 2016 4:36:02 PM
> show discoveredMainClasses
[info] List(htmlExp.HtmlExpApp, tutorial.webapp.MyApp)
[success] Total time: 0 s, completed Jan 23, 2016 4:36:13 PM
>

如果我从 build.sbt 中删除 mainClass 设置,它没有任何效果。错误信息与 mainClass 设置相同或没有它。

在 sbt 提示上,当我尝试 runMain htmlExp.HtmlExpApp 它可以工作并运行正确的主类。

我怎样才能在 build.sbt 中设置 mainClass 或者是这样 ScalaJSPlugin 不支持这个设置?

最佳答案

mainClass需要在每个配置的基础上设置:

mainClass in Compile := Some("htmlExp.HtmlExpApp")

如果你只是写 mainClass := ??? ,它设置 mainClass为您的整个项目。然而, mainClass检测基于每个配置。因此,自动检测会覆盖您的手动设置。正确覆盖自动检测的唯一方法是设置 mainClass对于特定配置。

请注意,这根本不是 Scala.js 特有的。这同样适用于普通的 JVM 项目(例如,参见 this post )。

关于scala - 如何在 Scala JS build.sbt 中设置主类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34965072/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com