zoukankan      html  css  js  c++  java
  • 增量打包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
    tjboss-4.0.5.GAserverdefaultdeployear.eariTreasuryEJB.jar
    @REM 
    SET PROJECT_HOME_TMP=E:installFile
    tjboss-4.0.5.GAserverdefaultdeployear.eariTreasuryEJB.jar
    
    @REM iTreasuryWEB.warWEB-INF SET PROJECT_HOME=E:installFile
    tjboss-4.0.5.GAserverdefaultdeployear.eariTreasuryWEB.warWEB-INF
    @REM SET PROJECT_HOME_TMP=E:installFile
    tjboss-4.0.5.GAserverdefaultdeployear.eariTreasuryWEB.warWEB-INF
    
    @REM iTreasuryWEB.wariTreasury-settlement SET PROJECT_HOME=E:installFile
    tjboss-4.0.5.GAserverdefaultdeployear.eariTreasuryWEB.wariTreasury-settlement
    @REM SET PROJECT_HOME_TMP=E:installFile
    tjboss-4.0.5.GAserverdefaultdeployear.eariTreasuryWEB.wariTreasury-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 ###第一行不做处理 请将需要打包的文件目录拷到此处如  classescommideaaccountserviceAccountService.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
  • 相关阅读:
    java并发之CountDownLatch
    在字符串中找出连续最长的数字串
    201301 JAVA题目0-1级
    linux vi 快捷键
    并行流水线、搜索、排序
    JDK中的Future模式
    Disruptor
    Unsafe类 AtomicReference AtomicStampedReference AtomicIntegerArray AtomicIntegerFieldUpdater vector SynchronousQueue
    java 虚拟机 分区 及 GC
    java 虚拟机对锁对优化
  • 原文地址:https://www.cnblogs.com/yun965861480/p/6427960.html
Copyright © 2011-2022 走看看