春天引导+ Scala.js客户资源未找到

问题描述 投票:0回答:1

我想的Java / Scala的SBT子项目的方式,每个模块是一个独立的SPA微服务相结合。我不得不春季启动(Tomcat)的服务的文件历史原因。我选择Scala.js编写JavaScript客户端。包装与SBT插件的帮助下完成。 build.sbt的相关部分是:

ThisBuild / scalaVersion := "2.12.6"

lazy val iamProject = ProjectRef(uri("https://github.com/iservport/iservport-iam.git"), "iam")

lazy val appCargo = (project in file("app-cargo")).enablePlugins(ScalaJSPlugin, ScalaJSWeb)

lazy val root = (project in file("."))
  .enablePlugins(JavaServerAppPackaging, UniversalDeployPlugin, AshScriptPlugin)
  .enablePlugins(DockerPlugin, SbtWeb)
  .settings(
    scalaJSProjects := Seq(appCargo),
    pipelineStages in Assets := Seq(scalaJSPipeline),
    name := "iservport-control",
    mainClass in Compile := Some("com.iservport.Application"),
...
  ).dependsOn(iamProject, appCargo)

当我通过扩大产生universal:packageBin应用拉链,lib目录下,我能找到com.iservport.iservport-cargo-1.1.1.RELEASE.jar(模块),以及:

jar -tf com.iservport.iservport-control-1.1.1.RELEASE.jar | grep cargo

…
META-INF/resources/webjars/iservport-control/1.1.1.RELEASE/14848cb02339ea90f0c6/com/iservport/cargo/service/ShipmentService.scala
META-INF/resources/webjars/iservport-control/1.1.1.RELEASE/iservport-cargo-opt.js.map
META-INF/resources/webjars/iservport-control/1.1.1.RELEASE/14848cb02339ea90f0c6/com/iservport/cargo/service/ShipmentDocumentService.scala
META-INF/resources/webjars/iservport-control/1.1.1.RELEASE/iservport-cargo-opt.js
META-INF/resources/webjars/iservport-control/1.1.1.RELEASE/14848cb02339ea90f0c6/com/iservport/cargo/repository/ShipmentTypeRepository.scala
…

我测试了春天引导服务webjars,例如,d3.js能力,我看到它的工作。不过,我看不到我的罐子里类似的资源相同webjar测绘工作:

META-INF/resources/webjars/iservport-control/1.1.1.RELEASE/iservport-cargo-opt.js

我已经与localhost:8443/webjars/iservport-control/1.1.1.RELEASE/iservport-cargo-opt.jslocalhost:8443/webjars/iservport-control /iservport-cargo-opt.js和其他变种试过,他们都是404。

我怎么能揭露上述iservport-cargo-opt.js到客户端?

scala spring-boot scala.js sbt-web
1个回答
0
投票

深入挖掘Scala.js文档后,我找到了解决办法:

localhost:8443/webjars/iservport-control/1.1.1.RELEASE/iservport-cargo-fastopt.js

我用本地实例测试,使用fastOptJS创建,但在生产ScalaJs使用fullOptJS。

© www.soinside.com 2019 - 2024. All rights reserved.