增量打包DOC版
压缩zip的命令有的系统没有的自己去下载一个,否则关闭压缩zip的命令。
有需要的自行更改,这是满足我需求的。
执行 publish.bat 即可,当然需要将文件清单写好放在 resources.txt中。
@REM author:莫大人 date:20160118
@echo off
ECHO =================增量打包工具=================
ECHO 作者:莫大人 20160118
setlocal enabledelayedexpansion
@REM 工程编译目录
@REM iTreasuryEJB
SET PROJECT_HOME=E:\installFile\rt\jboss-4.0.5.GA\server\default\deploy\ear.ear\iTreasuryEJB.jar
@REM
SET PROJECT_HOME_TMP=E:\installFile\rt\jboss-4.0.5.GA\server\default\deploy\ear.ear\iTreasuryEJB.jar @REM iTreasuryWEB.war\WEB-INF SET PROJECT_HOME=E:\installFile\rt\jboss-4.0.5.GA\server\default\deploy\ear.ear\iTreasuryWEB.war\WEB-INF
@REM SET PROJECT_HOME_TMP=E:\installFile\rt\jboss-4.0.5.GA\server\default\deploy\ear.ear\iTreasuryWEB.war\WEB-INF @REM iTreasuryWEB.war\iTreasury-settlement SET PROJECT_HOME=E:\installFile\rt\jboss-4.0.5.GA\server\default\deploy\ear.ear\iTreasuryWEB.war\iTreasury-settlement\
@REM SET PROJECT_HOME_TMP=E:\installFile\rt\jboss-4.0.5.GA\server\default\deploy\ear.ear\iTreasuryWEB.war\iTreasury-settlement\ echo 工程编译目录 %PROJECT_HOME%
@REM 资源文件
SET RESOURCE_FILE=resource.txt
echo 资源文件 %RESOURCE_FILE%
@REM 备份文件夹
SET BACKUP=BACKUP
@REM 是否压缩开关 1 开 0 关
SET ZIP_CMD=0
@REM 当前目录
SET CURRENT_DIR=%cd%
echo 当前目录 %CURRENT_DIR%
@REM 目标目录
SET TARGET_PATH=%CURRENT_DIR%\%BACKUP%
@REM 清除缓存
IF EXIST %TARGET_PATH% RMDIR /S /Q %TARGET_PATH%
IF EXIST %CURRENT_DIR%\Project.zip DEL %CURRENT_DIR%\Project.zip
@REM 判断是否存在资源文件,不存在创建一个并提示
IF NOT EXIST %CURRENT_DIR%\%RESOURCE_FILE% (@ECHO ###第一行不做处理 请将需要打包的文件目录拷到此处如 \classes\com\midea\account\service\AccountService.class>%RESOURCE_FILE%&&goto :eof)
IF NOT EXIST %TARGET_PATH% MKDIR %TARGET_PATH%
@REM 循环查询资源文件中的文件,存在则复制(保持目录结构),输出日志到 stdout.log
ECHO %date% ====================增量打包日志输出开始====================>>stdout.log
@REM CLASS 添加 \WEB-INF 之后复制
@REM for /f "skip=1 tokens=1,* delims=:" %i in ('findstr /s /e "class" %RESOURCE_FILE%') do (call :copyFile \WEB-INF%%j)
for /f "skip=1" %%i in (%RESOURCE_FILE%) do (call :copyFile %%i)
ECHO %date% ====================增量打包日志输出结束====================>>stdout.log
@REM 打包,如果增量文件为空那么不压缩
DIR /B %TARGET_PATH%|FINDSTR .*>nul&&(@ECHO 存在资源文件)||(@ECHO 不存在资源文件>>stdout.log&&goto :eof)
cd %TARGET_PATH%
mkdir WEB-INF
if exist classes move classes WEB-INF
IF %ZIP_CMD% EQU 1 (call :toZip)
ECHO =================增量打包结束=================
PAUSE
goto :eof @REM 复制
:copyFile
@REM 源文件
SET SRC_FILE=%PROJECT_HOME_TMP%%1%
@REM 目标文件
SET TARGET_FILE=%TARGET_PATH%%1%
@REM ECHO 假设源文件在%SRC_FILE%>>stdout.log
@REM 如果源文件为空那么不复制,并提示
IF "%SRC_FILE%"=="" (ECHO %SRC_FILE% 不存在,请将增量文件列表写入 %RESOURCE_FILE%>>stdout.log&&goto :eof)
@REM 判断源文件是否存在,不存在则记录 stdout.log
@REM 一定要使用ECHO OFF和ECHO ON,因为这两个可以让系统对期间的代码进行整块操作,还有就是需要主要,IF判断的括号一定要写在IF的这行中。
IF NOT EXIST %SRC_FILE% (
SET SRC_FILE=%PROJECT_HOME%%1%
SET TARGET_FILE=%TARGET_PATH%/WEB-INF/%1%
)
@REM ECHO 修正后的源文件为%SRC_FILE%>>stdout.log
IF NOT EXIST %SRC_FILE% (ECHO 找不到资源 %SRC_FILE% >>stdout.log&&goto :eof) @REM 目标文件目录
for %%a in (%TARGET_FILE%) do SET TARGET_TEMP=%%~dpa
@REM 目标文件目录是否存在,不存在则创建
IF NOT EXIST %TARGET_TEMP% MKDIR %TARGET_TEMP%
@REM 复制文件开始
COPY /y %SRC_FILE% %TARGET_TEMP%
goto :eof @REM 打包
:toZip
cd %TARGET_PATH%
zip -qr %CURRENT_DIR%\Project.zip *
goto :eof
增量打包DOC版的更多相关文章
- [Android Studio] Android studio 多渠道打包(超简洁版)
[Android Studio] Android studio 多渠道打包(超简洁版) 转载:http://xuyazhou.com/archives/461 http://relex.me/usin ...
- uniapp打包发版到linux服务器步骤----H5端
最近在写uni-app项目,项目打包部署到服务器后,搞了好一会一直打开是空白页,原来自己有几个地方疏忽了,现把步骤整理一下: 第1步:编辑配置 mainifest.json 文件 tip:运行的基础路 ...
- eclipse实现JavaWeb应用增量打包
很多情况下,项目是不允许全量发布的,所以你得把有做修改的文件一个个挑出来,如果有成千上百的文件,你是不是要头大了? 以下方法应该可以让你得到解救!前提是你是用装有svn plugin的eclipse上 ...
- webpack模块打包简易版
webpack基本使用流程(react) 1.安装webpack脚手架 cnpm install webpack webpack-cli -D 2.安装处理css的loader cnpm instal ...
- 异常学习笔记+打包+doc该软件包编译
jvm调用默认的异常处理机制printStackTrace办法 欲了解更多异常处理.问题 捕获异常代码块出现继承关系 应该把被继承的异常放在子类异常块的后面 watermark/2 ...
- git 增量打包
git diff f506693 ccc253c3 --name-only | xargs tar -czvf update.tar.gz
- 问题分析——Maven打包后发版,静态资源找不到
一.背景 Xxl-Job-Admin(开源分布式调度中心)项目在本地运行正常,Jenkins发版到测试环境,发版成功后,打开管理页面,页面css.js找不到. 怀疑是Maven没有把静态资源打包进去导 ...
- node-webkit 应用打包发布
方便进行打包,使用了nodejs ,gulp nw-builder 备注 windows 操作系统部分版本需要包含 msvcr100.dll 建议制作安装程序的时候直接包含 为了进行视频以及 ...
- iOS离线打包
预备环境 iOS开发环境,Mac OS.XCode 7.2以上版本: 下载HBuilder离线打包iOS版SDK(5+ SDK下载). SDK目录说明 HBuilder-Hello:离线打包演示应用: ...
随机推荐
- C#学习笔记(十六):索引器和重载运算符
二维数组如何映射到一维数组 重载运算符 1.算术运算符 2.关系运算符, < 和 > 成对重载 using System; using System.Collections.Generic ...
- C++小结:迟到的小结和重新起航的故事
迟到的小结和重新起航的故事 有关这个学期的故事,随着这个学期的结束也划上了一个句号. 正如之前博客里面(还是空间里面)提到的,在这个过程中的收获比最后考试的结果更重要. 就像这次的计算器,也许会对最后 ...
- LA 3486 Cells(判祖先+栈模拟dfs)
https://vjudge.net/problem/UVALive-3486 题意: 判断u是否是v的祖先. 思路: 很简单,dfs遍历,记录每个节点第一次访问时的时间戳 in[i] 和第二次访问时 ...
- 数组类型的退化Decay
Decay即数组在某些情况下将退化为指针. 测试代码: #include <iostream> #include <typeinfo> template <typenam ...
- Cocos2d-x学习笔记(一)环境搭建与项目创建
可运行的代码可以说明一切问题. 环境需安装VS201x + Python2.7 + Cocos2d-x-2.2.5.(Linux下参考链接:http://www.cocos2d-x.org/wiki/ ...
- 关于nohup 和 &的使用
nohup 是 no hang up 的缩写,意思是不挂断运行,一直运行下去,永久运行下去,但是注意并没有后台运行的功能 & 是在后台运行的意思 单独使用一个命令,还不能在终端关闭的时候,让 ...
- Springboot 如何加密,以及利用Swagger2构建Restful API
先看一下使用Swagger2构建Restful API效果图 超级简单的,只需要在pom 中引用如下jar包 <dependency> <groupId>io.springfo ...
- C#学习 day1 c#基础
C#是一门编程语言,为什么我今天开始学C#了,下学期有门C#的课,以及有一个经验丰富的老学长正在做C#项目,由于之前学过C++和C基础,所以,C#的基础部分我查看文档来尝试能否自学归纳,而不是一直依靠 ...
- pandas时间序列分析和处理Timeseries
pandas最基本的时间序列类型就是以时间戳(TimeStamp)为index元素的Series类型. 生成日期范围: pd.date_range()可用于生成指定长度的DatetimeIndex.参 ...
- Netcat使用方法
netcat被誉为网络安全界的‘瑞士军刀',相信没有什么人不认识它吧...... 一个简单而有用的工具,透过使用TCP或UDP协议的网络连接去读写数据.它被设计成一个稳定的后门工具,能够直接由其它 ...