gradle warでJSをバンドルさせる
分かりづらいので
├── build.gradle └── src └── main ├── java ├── js │ └── jquery.js └── webapp └── WEB-INF ├── classes └── lib
っていうような構造になっている。でwarタスクでパッケージングをした際に
0 Sun Mar 02 15:32:42 JST 2014 META-INF/ 25 Sun Mar 02 15:32:42 JST 2014 META-INF/MANIFEST.MF 0 Sun Mar 02 15:32:42 JST 2014 static/ 0 Sun Mar 02 15:32:42 JST 2014 static/js/ 93107 Sat Mar 01 20:01:48 JST 2014 static/js/jquery.js 0 Sat Mar 01 20:01:24 JST 2014 WEB-INF/ 0 Sat Mar 01 20:01:24 JST 2014 WEB-INF/lib/ 0 Sat Mar 01 20:01:24 JST 2014 WEB-INF/classes/
っていうようにJSなのを.warに含まれるようにするには
apply plugin: "war"
war {
from("src/main/js") {
into "static/js"
}
}
っていうようにfromとintoで指定すれば良い模様。warの場合src/main/{java,webapp}なのは解釈されてバンドルされるが、src/main/jsのような非定義な構造なやつはバンドルされない。上記のようにする事でプロジェクト内にJSをぶち込んでやれば良い模様
一応、jettyプラグインでjettyRunWar等のタスクを利用して開発用のJettyサーバーを起動してアクセスしても問題無い模様
これで良いかどうかは微妙な所だけど