文档章节

使用Gradle打包war文件

markdrord
 markdrord
发布于 2015/03/02 18:12
字数 347
阅读 207
收藏 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打war包时,包含中文文件名导致war包无法解压的解决办法

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

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

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

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

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

mmythos
2017/12/30
0
0
springboot(十二):springboot如何测试打包部署

有很多网友会时不时的问我,spring boot项目如何测试,如何部署,在生产中有什么好的部署方案吗?这篇文章就来介绍一下spring boot 如何开发、调试、打包到最后的投产上线。 开发阶段 单元测...

ityouknow
2017/05/09
0
0
CAS Server 下载、部署、测试 与 Tomcat 7.0 开启 Https

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

华山猛男
2018/03/12
1
0

没有更多内容

加载失败,请刷新页面

加载更多

弹窗时候禁止页面滚动

1、依靠css 将页面 document.documentElement.style.overflow='hidden'; document.body.style.overflow='hidden';//手机版设置这个。 如果设置了如上,页面的滚动条将会消失,此时鼠标滚轮失......

Jack088
24分钟前
6
0
.NET的数学库NMath实用教程——创建最小二乘法

NMath是一个适用于所有.NET语言,如C#、Visual Basic、F#和.NET的数学库,它包含了.NET平台上的面向对象数字计算的基础类。我们将以连载的形式向大家介绍NMath的实用教程,有任何建议或提示...

ymy_666666
24分钟前
2
0
索尼为收购工作室准备,对抗微软?

对比来说,索尼方面不但没有增加新的工作室,反而在过去两年内关闭了一些工作室。面对微软的步步紧逼,索尼最新的招聘广告暗示将来有可能会收购一些工作室。 在领英上,索尼互动娱乐发布了两...

linuxCool
25分钟前
1
0
公司网站有漏洞被入侵该怎么解决

2019年1月14日消息,thinkphp又被爆出致命漏洞,可以直接远程代码执行,getshell提权写入网站木马到网站根目录,甚至直接提权到服务器,该漏洞影响版本ThinkPHP 5.0、ThinkPHP 5.0.10、Think...

网站安全
37分钟前
2
0
centos7 Nginx+rtmp 搭建流媒体服务器

一. gcc 安装 安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装: yum -y install gcc gcc-c++ 二. PCRE pcre-devel 安装 PCRE(Perl Compatib...

legend3
54分钟前
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部