Je travaille sur un ScalaJS classique avec Scalatags ... application en utilisant l'approche de construction croisée:ScalaJS fastOptJS et commencer script avec SBT-native-emballeur
<root folder>
- client
- project
- server
- shared
- build.sbt
Il fonctionne très bien en marche sbt re-start
ou sbt run-main WebServer
maintenant , avec le sbt-native-pagkager plugin Je voudrais emballer toutes les choses et générer un script de démarrage pour mon projet.
La génération de script de démarrage fonctionne, mais le fastOptJs de ScalaJS semble ne pas être inclus.
Il y a quelque chose qui devrait aider here mais certainement pas dans mon cas.
BTW, mon build.sbt fichier ressemble:
val scalaV = "2.12.2"
lazy val server = (project in file("server"))
.settings(
scalaVersion := scalaV,
scalaJSProjects := Seq(client),
pipelineStages in Assets := Seq(scalaJSPipeline),
// triggers scalaJSPipeline when using compile or continuous compilation
compile in Compile := ((compile in Compile) dependsOn scalaJSPipeline).value,
libraryDependencies ++= Seq(
...
),
WebKeys.packagePrefix in Assets := "public/",
(managedClasspath in Runtime) += (packageBin in Assets).value,
// Packaging
topLevelDirectory := None // Don't add a root folder to the archive
)
.enablePlugins(SbtWeb, JavaAppPackaging)
.dependsOn(sharedJvm)
lazy val client = (project in file("client"))
.settings(
scalaVersion := scalaV,
scalaJSUseMainModuleInitializer := true,
unmanagedSourceDirectories in Compile := Seq((scalaSource in Compile).value),
libraryDependencies ++= Seq(
...
),
jsDependencies ++= Seq(
...
)
)
.enablePlugins(ScalaJSPlugin, ScalaJSWeb)
.dependsOn(sharedJs)
lazy val shared = (crossProject.crossType(CrossType.Pure) in file("shared"))
.enablePlugins(BuildInfoPlugin)
.settings(
scalaVersion := scalaV,
libraryDependencies ++= Seq(
...
),
// build info
buildInfoOptions += BuildInfoOption.BuildTime,
buildInfoKeys := Seq[BuildInfoKey](
),
buildInfoPackage := "com.example.build"
)
.jsSettings(
libraryDependencies ++= Seq(
...
)
)
.jsConfigure(_ enablePlugins ScalaJSWeb)
....
Toute aide? Merci beaucoup!