[Gradle中文教程系列]-跟我学Gradle-7.3:打包-为Web工程打不同环境包
来源:互联网 发布:淘宝自行车用品店推荐 编辑:程序博客网 时间:2024/05/22 14:51
通过一种奇葩的快捷方式给web工程打不同环境包
通常而言,开发环境和生产环境参数有着较大的差异,在上古时代,猿们通过打包时或者开发时手工修改配置文件的方式来区分生产环境和开发环境。显然这种方式是比较低效且lowbee的。那么,我们可以将不同环境的配置文件各建一份,通过Gradle来进行不同环境的打包。比如如下几种方式
- 根据不同环境的参数建立不同的环境文件,打包时只打包相应的环境文件
把环境参数配置到x.properties文件中,打包时从文件中读取相应参数动态修改配置文件
下面的姿势是选取的第一种,在
src/main/resources
按不同环境建立相应的folder,打包时将不需要环境文件排除掉。当然我这里只是一个示例,实际情况可以自行修改代码实现,比如如果不想保留环境目录直接把环境文件打包到src/main/resources
,则直接把环境目录追加到srcDir下即可执行下面的命令打相关环境的包
gradle -q -Penv=pro
可以修改gradle.properties
中的env
默认值
gradle.properties
env=dev
这种方式是直接将环境包目录下的文件打包到resources根目录下的方式 build.gradle
apply plugin: 'java'sourceSets { main { resources { srcDir "src/main/resources/${env}" sourceSets.main.resources.srcDirs.each { it.listFiles().each { if(it.isDirectory()) { exclude "${it.name}" } } } } }}
—————— —————— wei suo fen ge xian —————— ——————
下面这种是保留环境包目录的方式 build.gradle
apply plugin: 'java'sourceSets { main { resources { sourceSets.main.resources.srcDirs.each { it.listFiles().each { if(it.isDirectory() && it.name != "${env}") { println "exclude ${it.name}" exclude "${it.name}" } } } } }}
0 0
- [Gradle中文教程系列]-跟我学Gradle-7.3:打包-为Web工程打不同环境包
- 0.[Gradle中文教程系列]跟我学Gradle-目录
- 1.[Gradle中文教程系列]跟我学Gradle-Gradle的概述、简介和优势
- 2.[Gradle中文教程系列]跟我学Gradle-下载和安装Gradle
- [Gradle中文教程系列]-跟我学Gradle-附录:gradle命令行详解
- [Gradle中文教程系列]-跟我学Gradle-14.1:Gradle IDEA集成插件的使用
- [Gradle中文教程系列]-跟我学Gradle-附录-2.Gradle的日志级别
- [Gradle中文教程系列]-跟我学Gradle-4.1:Nexus私服的安装与配置
- [Gradle中文教程系列]-跟我学Gradle-8.1-多模块项目 - 概述
- [Gradle中文教程系列]-跟我学Gradle-8.2-多模块项目- 项目结构
- [Gradle中文教程系列]-跟我学Gradle-8.3-多模块项目- settings文件
- [Gradle中文教程系列]-跟我学Gradle-8.4-多模块项目- build文件
- [Gradle中文教程系列]-跟我学Gradle- 8.5 - 多模块项目- 分离配置
- [Gradle中文教程系列]-跟我学Gradle-5.0:依赖-关于依赖管理
- [Gradle中文教程系列]-跟我学Gradle-5.1:依赖的坐标与范围
- [Gradle中文教程系列]-跟我学Gradle-5.2:依赖的分类
- [Gradle中文教程系列]-跟我学Gradle-5.4:依赖-依赖的更新与缓存
- [Gradle中文教程系列]-跟我学Gradle-5.5:依赖-构件的上传与发布
- activity启动时获取view的高度和宽度
- git对象
- Unity Mecanim在大型mmo中的应用
- 深入了解session/cookie机制
- [FAQ13618]L版本之后如何开启AAL功能
- [Gradle中文教程系列]-跟我学Gradle-7.3:打包-为Web工程打不同环境包
- #warning的用处
- jquery如何实现倒计时效果
- 时间触发和状态机思想的嵌入式系统
- ORACLE 12c 内存特性研究
- xgboost入门以及windows下安装及使用一
- android中view随手指移动
- 回调函数的面向对象设计
- 微信公众号开发