文档章节

使用Gradle打包war文件

markdrord
 markdrord
发布于 2015/03/02 18:12
字数 347
阅读 242
收藏 2

Gradle中有名称为war的task,负责war文件打包,如果你的开发环境与发布环境完全相同,那么不需要任何配置,否则需要一些细微的调整。

场景一:不将一些jar文件打包到war文件中

例如jta、servlet、jsp等jar文件在开发环境中是必须使用的,但是不希望被打包到war中,那么可以:

dependencies {
	providedRuntime 'javax.servlet:jsp-api:2.0'
	providedRuntime 'javax.servlet:servlet-api:2.5'
	providedRuntime 'javax.transaction:jta:1.1'
}

将依赖添加到providedRuntime中,则不会出现在war文件中

场景二:classpath文件替换

在dorado-home中configuration.properties文件,在开发环境中通常具有core.runModel=debug内容,但是打包时可不需要出现这些内容,那么可以排除这些文件,使用新的文件:(如果dorado-home在classpath中,例如在src/main/resources下)

processResources {
	from('src/main/resources') {
		include '**/*'
		exclude 'dorado-home/configure*.properties'
	}
	from('src/production') {
		include '**/*'
	}
}

利用名称为processResources的task可以完成这个工作。上面的例子将dorado-home放在了main/src/resources文件夹下,而不是WEB-INF下面。通过exclude关键字将dorado-home下configure.properties、configure-debug.properties和configure-test.properties文件排除掉,即不会出现在war文件中,然后将src/production目录(下面具有dorado-home/configure.properties)下的的所有文件复制过来。

 

场景二:webapp文件替换

如果dorado-home在WEB-INF下面:

war {
    copyAction.exclude 'WEB-INF/dorado-home/configure*.properties'
    webInf {
        from('src/production')
    }
}


© 著作权归作者所有

markdrord
粉丝 1
博文 7
码字总数 2329
作品 0
浦东
技术主管
私信 提问
Gradle入门(6):创建Web应用项目

本文由 伯乐在线 - JustinWu翻译,黄利民 校稿。未经许可,禁止转载!英文出处:Petri Kainulainen。欢迎加入翻译组。 如果你并不熟悉Gradle,在继续阅读本文之前,你应当先阅读以下文章。 ...

低至一折起
08/20
49
0
使用gradle打war包时,包含中文文件名导致war包无法解压的解决办法

在平时的项目工作中使用的是Gradle+idea+git的工具组合,所以在进行项目打包时使用的gradle来完成。 1.使用gradle clean war 命令将项目打包 2.将生成的war包放置在tomcat的webapps目录下即可...

Alex_Nine
2016/06/06
991
0
Gradle的一些笔记(持续更新)

七月份就开始在接触了用gradle构建的项目,但是对于这个软件一直半懂不懂,直到后来在知乎上看到一篇关于如何理解gradle的文章,感觉明白了很多。链接:https://www.zhihu.com/question/3043...

文质斌彬
2016/10/24
63
0
SpringBoot相关

SpringBoot 目录创建于2017-12-18 SpringBoot 安装SpringBootCLI 安装SDKMAN 注意:所有类要和类 同包或子包 Springboot的测试模块 可以使用MockMvc来测试Controller层的代码 可以使用MockM...

mmythos
2017/12/30
0
0
CAS Server 下载、部署、测试 与 Tomcat 7.0 开启 Https

这篇文章只介绍如何下载、部署、测试,概念将在单独篇章进行讲解。 值得注意的是cas server 没有现成的应用部署包,是需要我们自己去打包成war后,手动进行发布,有两种打包方式,第一种是通...

华山猛男
2018/03/12
694
0

没有更多内容

加载失败,请刷新页面

加载更多

nginx学习之模块

1、 stub_status模块: 用于展示nginx处理连接时的状态。 配置语法如下: Syntax:stub_status;Default:默认没有配置Context:server、location 可以编辑default.conf,加上如下配置: ...

码农实战
36分钟前
4
0
MySQL,必须掌握的6个知识点

目录 一、索引B+ Tree 原理 MySQL 索引 索引优化 索引的优点 索引的使用条件 二、查询性能优化使用 Explain 进行分析 优化数据访问 重构查询方式 三、存储引擎InnoDB MyISAM 比较 四、数据类...

李红欧巴
40分钟前
4
0
堆”和“栈

C++作为一款C语言的升级版本,具有非常强大的功能。它不但能够支持各种程序设计风格,而且还具有C语言的所有功能。我们在这里为大家介绍的是其中一个比较重要的内容,C++内存区域的基本介绍。...

SibylY
52分钟前
4
0
总结:Https

一、介绍 简单理解,https即在http协议的基础上,增加了SSL协议,保障数据传输的安全性。 它由以前的http—–>tcp,改为http——>SSL—–>tcp;https采用了共享密钥加密+公开密钥加密的方式 ...

浮躁的码农
54分钟前
6
0
数据库表与表之间的一对一、一对多、多对多关系

表1 foreign key 表2 多对一:表 1 的多条记录对应表 2 的一条记录 利用foreign key的原理我们可以制作两张表的多对多,一对一关系 多对多: 表1的多条记录可以对应表2的一条记录 表2的多条记...

Garphy
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部