本章介紹了 Gradle 對 Web 應(yīng)用的相關(guān)支持。 Gradle 為 Web 開發(fā)提供了兩個(gè)主要插件,War 插件 和 Jetty 插件。 其中 War 插件繼承自 Java 插件,可以用來生成 WAR 文件。Jetty 插件 繼承自 War 插件 作為工程部署的容器。
應(yīng)用 War 插件 來構(gòu)建 WAR 文件:
build.gradle
apply plugin: 'war'
注意,完整的項(xiàng)目源碼見https://github.com/waylau/Gradle-2-User-Guide-Demos 中 webApplication/quickstart
同時(shí)應(yīng)用 Java 插件,當(dāng)你執(zhí)行 gradle build 時(shí),將會編譯、測試、打包工程成為一個(gè) WAR 文件。 Gradle 會在 WAR 中 src/main/webapp 下尋找 源文件。編譯后的classes文件以及運(yùn)行時(shí)依賴也都會被包含在 WAR 包中,分別在 WEB-INF/classes 和 WEB-INF/lib 目錄下。
需要應(yīng)用 Jetty 插件來運(yùn)行應(yīng)用。
build.gradle
apply plugin: 'jetty'
同樣需要應(yīng)用 WAR 插件,當(dāng)你執(zhí)行 gradle jettyRun 時(shí),將會運(yùn)行應(yīng)用在一個(gè)內(nèi)嵌的 Jetty Web 容器里。運(yùn)行 gradle jettyRunWar將會構(gòu)建成 WAR 文件,接著運(yùn)行在內(nèi)嵌 的 Web 容器。
TODO:url,端口,以及源文件位置都可以在腳本中進(jìn)行指定修改并重載。
Groovy web 應(yīng)用
在一個(gè)項(xiàng)目中你可以采用多個(gè)插件。比如你可以在 web 項(xiàng)目中同時(shí)使用War 插件和 Groovy 插件來構(gòu)建基于 web 應(yīng)用的 Groovy。適當(dāng)?shù)?Groovy 庫將被添加到 WAR 的文件中。
你可以在https://github.com/waylau/Gradle-2-User-Guide-Demos 中 webApplication 下找到更多示例.