Gradle War 插件


本文整理自网络,侵删。

War 插件

War 的插件继承自 Java 插件并添加了对组装 web 应用程序的 WAR 文件的支持。它禁用了 Java 插件生成默认的 JAR archive,并添加了一个默认的 WAR archive 任务。

用法

要使用 War 的插件,请在构建脚本中包含以下语句:

使用 War 插件

build.gradle

apply plugin: 'war'  

任务

War 插件向 project 中添加了以下任务。

表 26.1. War 插件 - 任务

任务名称 依赖于 类型 描述
war compile War 组装应用程序 WAR 文件。

War 插件向 Java 插件所加入的 tasks 添加了以下的依赖。

表 26.2. War 插件 - 额外的 task 依赖

任务名称 依赖于
assemble war

图 26.1. War 插件 - tasks

项目布局

表 26.3. War 插件 - 项目布局

目录 意义
from <s1>'src/main/webapp'</s1> Web 应用程序源代码

依赖管理

War 插件添加了两个依赖配置: providedCompile 和 providedRuntime。虽然它们有各自的compile 和 runtime 配置,但这些配置有相同的作用域,只是它们不会添加到 WAR 文件中。要特别注意,这些 provided 配置的传递使用。假设你添加 commons-httpclient:commons-httpclient:3.0 依赖到任何一个 provided 配置。这个依赖又依赖于 commons-codec。这意味着 httpclient 和 commons-codec 都不会添加到你的 WAR 中,即使 commons-codec 是 compile 配置上的一个显示依赖。如果你不想要这种传递行为,只是把 provided 依赖声明成和commons-httpclient:commons-httpclient:3.0@jar 一样。

公约属性

表26.4. War 插件 ??- 目录属性

属性名称 类型 默认值 描述
webAppDirName String from <s1>'src/main/webapp'</s1> web 应用程序源目录的名称,是一个相对于项目目录的目录名称。
webAppDir File (read-only) webAppDirName Web 应用程序的源目录。

这些属性由一个 WarPluginConvention 公约对象提供。

War

War task 的默认行为是将 src/main/webapp 的内容复制到 archive 的根目录下。你的 webapp 目录自然可能包含一个 WEB-INF 子目录,这个子目录可能还再包含一个 web.xml 文件。已编译的类被编译进 WEB-INF/classes。所有 runtime 配置的依赖被复制到 WEB-INF/lib。

自定义

下面是一个示例,展示了最重要的自定义选项:

阅读剩余部分

相关阅读 >>

Gradle 使用 Gradle 图形用户界面

Gradle 概述

Gradle java 插件

Gradle java 构建入门

Gradle scala 插件

Gradle 使用文件

Gradle sonar 插件

Gradle sonar runner 插件

Gradle checkstyle 插件

Gradle ear 插件

更多相关阅读请进入《Gradle》频道 >>



打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...