Embedding play as a library、私は自分のプロジェクトでsbt-webプラグインを有効にしてを実行して、アセットをtarget/web/stage/
にそのままコピーしました。しかし、再生使用Frameworkのstring interpolation routing DSL次のように、それらが一致した要求が入ってきたときに提供されていません。遊びコードhandling Assets.at
て プレイフレームワークなしのPlay Framework sbt-web統合
object PlayServer extends App {
val server = NettyServer.fromRouter() {
case GET(p"/public/$file*") => {
val path = "/target/web/stage"
Assets.at(path = path, file = file)
}
}
デバッグが、それは何もないように見える
がtarget/scala-2.11/classes/
下にあるリソースへの資産をもたらし、どこおそらくフレームワークを再生からリソースとしてそれらをロードしようとしています。
sbt web-stage
を実行していても、それは特に気にしません。
資産をそこに置くことを管理するsbt-webの管理に欠けているものは何ですか?手動でそこに配置されたとき、統合が動作します!だから、デフォルト設定のsbt-webは、プレイが関係する限り、間違ったターゲットサブディレクトリに資産を配置するようです...
plugins.sbt
私はsbt-webから次のものだけを含めます。 ? /src/main/resources/assets/
の下で資産を置く
addSbtPlugin("com.typesafe.sbt" % "sbt-web" % "latest.release")