- 画像
- css
- js
- web Font
など(以下resources)をどうやって扱うかという話。
日本語の記述が全く見当たらなかったのでメモ代わりに。
ディレクトリ構成
src/main/resources
がresourcesを扱うためのルートディレクトリになる。
メソッド
getFromResource
getFromResource
パスとファイル名を直接指定する場合に用いる
src/main/resources/hoge.txt
を表示したい場合
get {
path("hoge") {
getFromResource("hoge.txt")
}
}
getFromResourceDirectory
getFromResourceDirectory
pathPrefix
と組み合わせて用いる
src/main/resources/css/*.css
の読み込み
get {
pathPrefix("css") {
getFromResourceDirectory("css")
}
}
こうしておくと、html側で
<link href="css/foo.css" rel="stylesheet">
<link href="css/bar.css" rel="stylesheet">
このように、hrefに指定するパスをcss
から始めれば読み込むことができる
要調査: 任意のディレクトリをresourcesのルートとして扱う方法
build.sbt
にunmanagedResourceDirectories
の指定を入れたら任意のディレクトリを指定できるっぽいけど上手く行かなかった
build.sbt
unmanagedResourceDirectories in Compile <++= baseDirectory { base =>
Seq( base / "src/main/webapp" )
}