webassets не работает на собранном толстом фляге sbt (докер) - PullRequest
1 голос
/ 07 июня 2019

Статический файл хорошо работает в "sbt run".Но это не работает в докере, который собран сборкой sbt.

Я использую Play 2.5.12, и мне нужно обработать только один статический файл, поэтому я добавляю файл в общую папку и добавляю маршрут наroute.conf, как показано ниже.

GET /googlee.html controllers.Assets.at (path = "/ public", file = "google.html")

Это работает очень хорошо, если яоткройте приложение с "sbt run".Но когда я поднимаю его в докере, это не работает.

Я обновляю уровень журнала до DEBUG, но он ничего не показывает об ошибке.Я предполагаю, что это проблема "sbt assembly", но я не могу понять, в чем причина.

Ниже приведен фрагмент о "sbt assembly" в build.sbt

assemblyJarName in assembly := "my-app" + "-assembly.jar",
assemblyMergeStrategy in assembly := {
  case PathList("newrelic-agent") => MergeStrategy.discard
  case PathList(ps @ _*) if ps.last endsWith ".class" => MergeStrategy.first
  case PathList(ps @ _*) if ps.last endsWith ".java"  => MergeStrategy.first
  case PathList(ps @ _*) if ps.last endsWith ".yaml"  => MergeStrategy.first
  case PathList(ps @ _*) if ps.last endsWith ".yml"  => MergeStrategy.first
  case PathList(ps @ _*) if ps.last endsWith "excludes"  => MergeStrategy.first
  case PathList(ps @ _*) if ps.last endsWith ".txt"  => MergeStrategy.first
  case PathList(ps @ _*) if ps.last endsWith ".properties"  => MergeStrategy.first
  case PathList(ps @ _*) if ps.last endsWith ".json"  => MergeStrategy.first
  case PathList(ps @ _*) if ps.last endsWith ".jar"   => MergeStrategy.first
  case PathList(ps @ _*) if ps.last endsWith ".html"  => MergeStrategy.first
  case "application.conf"                             => MergeStrategy.concat
  case "CHANGELOG"                                    => MergeStrategy.discard
  case manifest if manifest.contains("MANIFEST.MF")   => MergeStrategy.discard
  case x =>
    val oldStrategy = (assemblyMergeStrategy in assembly).value
    oldStrategy(x)
},
...