压缩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版的更多相关文章

  1. [Android Studio] Android studio 多渠道打包(超简洁版)

    [Android Studio] Android studio 多渠道打包(超简洁版) 转载:http://xuyazhou.com/archives/461 http://relex.me/usin ...

  2. uniapp打包发版到linux服务器步骤----H5端

    最近在写uni-app项目,项目打包部署到服务器后,搞了好一会一直打开是空白页,原来自己有几个地方疏忽了,现把步骤整理一下: 第1步:编辑配置 mainifest.json 文件 tip:运行的基础路 ...

  3. eclipse实现JavaWeb应用增量打包

    很多情况下,项目是不允许全量发布的,所以你得把有做修改的文件一个个挑出来,如果有成千上百的文件,你是不是要头大了? 以下方法应该可以让你得到解救!前提是你是用装有svn plugin的eclipse上 ...

  4. webpack模块打包简易版

    webpack基本使用流程(react) 1.安装webpack脚手架 cnpm install webpack webpack-cli -D 2.安装处理css的loader cnpm instal ...

  5. 异常学习笔记+打包+doc该软件包编译

    jvm调用默认的异常处理机制printStackTrace办法      欲了解更多异常处理.问题      捕获异常代码块出现继承关系 应该把被继承的异常放在子类异常块的后面 watermark/2 ...

  6. git 增量打包

    git diff f506693 ccc253c3 --name-only | xargs tar -czvf update.tar.gz

  7. 问题分析——Maven打包后发版,静态资源找不到

    一.背景 Xxl-Job-Admin(开源分布式调度中心)项目在本地运行正常,Jenkins发版到测试环境,发版成功后,打开管理页面,页面css.js找不到. 怀疑是Maven没有把静态资源打包进去导 ...

  8. node-webkit 应用打包发布

    方便进行打包,使用了nodejs  ,gulp  nw-builder 备注  windows 操作系统部分版本需要包含  msvcr100.dll  建议制作安装程序的时候直接包含 为了进行视频以及 ...

  9. iOS离线打包

    预备环境 iOS开发环境,Mac OS.XCode 7.2以上版本: 下载HBuilder离线打包iOS版SDK(5+ SDK下载). SDK目录说明 HBuilder-Hello:离线打包演示应用: ...

随机推荐

  1. 【第三十二章】 elk(3)- broker架构 + 引入logback

    实际中最好用的日志框架是logback,我们现在会直接使用logback通过tcp协议向logstash-shipper输入日志数据.在上一节的基础上修改!!! 一.代码 1.pom.xml 1 &l ...

  2. Python 逗号的几种作用

    转自http://blog.csdn.net/liuzx32/article/details/7831247 最近研究Python  遇到个逗号的问题 一直没弄明白 今天总算搞清楚了 1.逗号在参数传 ...

  3. JavaScript权威指南2.词法结构

    字符集 1.用16位的Unicode字符集编写的,可以表示地球上通用的每一种书面语言.国际化 2.每个字符都是用两个字节表示的 3.大小写敏感:关键字.变量.函数名.标识符:HTML并不区分大小写 H ...

  4. Ubuntu 上 执行命令 java -version 显示 没有那个文件或目录

    解决方法 执行 which java 发现默认java目录:/usr/bin/java . 查看 JAVA_HOME 路径:$JAVA_HOME,得到 /usr/local/java/jdk1.7.0 ...

  5. java工程师

    java工程师 职位描述 1.参与产品后台需求和产品经理确定: 2.主导产品后台架构设计和前端通讯协议: 3.设计后台的架构,能支持大的并发量: 4.优化后台的性能,能保证接口的流畅性: 5.负责解决 ...

  6. python读取文本txt文件乱码问题

    python2的编码实在是个头疼的问题,编码问题也将作为一个长期的话题,遇到问题随时补充. 这次的问题比较简单,是在做词云wordcloud的时候发现的,作用就是从文本文件中读取文字,将其制作成词云. ...

  7. 关于express项目的创建与启动

    没有经常用,所以经常搞错, 创建express项目,需要新建一个文件夹名,这个文件名就是用来承载express的内容的, 好了.打开终端,cd至创建的文件夹之下. 也可以直接这样,如以下,admin为 ...

  8. Struts2文件上传的大小限制问题

      问题:上传大文件报错…… 解决:修改struts.xml文件中的参数如下 <constant name="struts.multipart.maxSize" value= ...

  9. vs下手敲git命令补遗

    大多数常用的点按钮就行了.少数还是手敲方便 ng new myapp   的时候已经新建git了,不过只有master分支. 创建新分支可以点vs左下角分支名字,然后在上方弹出的命令行里写名字,不过鼠 ...

  10. jsp/servlet区别

    简介: JSP全名为Java Server Pages,中文名叫java服务器页面,其根本是一个简化的Servlet设计,它是由Sun Microsystems公司倡导.许多公司参与一起建立的一种动态 ...