下载地址

https://pan.baidu.com/s/1cIyCbG

导jar包

@echo off
setlocal enabledelayedexpansion
echo --------------------------------导出jar包批处理工具--------------------------------
echo 说明1:请在当前bat文件目录下放置jar_list.txt清单
echo 说明2:根据jar_list.txt将会生成export_file.txt(自动追加相关匿名内部类)
echo 说明3:最终会以export_file.txt为标准执行导出
echo 说明4:成功为[绿色]背景,失败为[红色]背景
echo 即将开始,请输入您的项目名(如policy,nonvhl,finarp,reinsure,isc,vch,claim7,commbase)↓
set /p inputName=
echo !inputName!
set exportJarName=%~n0
set char1=$&set char2=*
set Dyy=%date:~0,4%& set DMM=%date:~5,2%& set Ddd=%date:~8,2%
type nul>export_file.txt
set export_file=%~dp0export_file.txt
echo 重置export_file.txt文件内容
echo 追加export_file.txt文件内容开始
for /f %%a in (jar_list.txt) do (
Rem echo %%~nxa
call :count countResult %%~nxa
set /a countInt=!countResult!*-1
echo %%~a>>%export_file%
set name=%%~na
if %%~xa == ^.class (
call :length lengthResult %%a !countInt!
pushd %cd%
cd %%~da%%~pa
set pattern=!name!%char1%%char2%%%~xa
Rem echo !pattern!
for %%c in (!pattern!) do (
echo 发现遗漏文件!lengthResult!%%c,已追加到export_file.txt
echo !lengthResult!%%c>>%export_file%
)
popd
) else (
echo ''>nul
)
)
echo 追加export_file.txt文件内容结束
echo 将以export_file.txt为标准执行jar包导出
jar -cvf !inputName!%Dyy%%DMM%%Ddd%01.jar @%export_file%
if %errorlevel% equ 0 (
echo 导出最终jar包:!inputName!%Dyy%%DMM%%Ddd%01.jar 成功
color 2f
) else (
echo 导出最终jar包:!inputName!%Dyy%%DMM%%Ddd%01.jar 错误
color 4f
) goto exit :count
set /a num=0
set countArg2=%2
:innercount
if not "%countArg2%"=="" (
set /a num+=1
set countArg2=%countArg2:~1%
goto innercount
)
set %1=%num%
goto :eof :length
set lengthArg2=%2
set lengthArg3=%3
set o=!lengthArg2:~0,%lengthArg3%!
Rem echo %2%3!o!
set %1=!o!
goto :eof :exit
pause

使用说明

export_jar.bat为打增量jar包批处理工具(可自动追加匿名内部类)

jar_list.txt为文件清单

第一步: 请将export_jar.bat和jar_list.txt放至WEB-INF同级目录下

其中jar_list.txt内容如下,注意WEB-INF前不带/ , 且后缀.java应改成.class

WEB-INF/classes/test/inner/OuterFirstClass.class
WEB-INF/classes/test/inner/OuterSecondClass.class
WEB-INF/classes/test/servlet/DoubleServlet.class
index.html

第二步: 双击export_jar.bat运行,按提示输入项目名如policy

最后一步: 成功时将返回绿色背景,失败时显示红色背景

其它笔记

日期显示

%Thh: =0% 是因为当小时<10时,需要把前导空格替换成0

@echo off
echo 日期时间
set Dyy=%date:~0,4%& set DMM=%date:~5,2%& set Ddd=%date:~8,2%
set Thh=%TIME:~0,2%& set Tmm=%TIME:~3,2%& set Tss=%TIME:~6,2%
set Thh=%Thh: =0%
set datetime=mydatetime_%Dyy%%DMM%%Ddd%_%Thh%%Tmm%%Tss%.txt
echo %datetime%
pause
												

windows cmd命令 批处理bat 导增量jar包【原】的更多相关文章

  1. cmd命令行和bat批处理操作windows服务(转载)

    一.cmd命令行---进行Windows服务操作 1.安装服务 sc create 服务名 binPath= "C:\Users\Administrator\Desktop\win32srv ...

  2. Windows CMD命令大全(转)

    Windows CMD命令大全   命令简介 cmd是command的缩写.即命令行 . 虽然随着计算机产业的发展,Windows 操作系统的应用越来越广泛,DOS 面临着被淘汰的命运,但是因为它运行 ...

  3. 【转】Python实现修改Windows CMD命令行输出颜色(完全解析)

    用Python写命令行程序的时候,单一的输出颜色太单调.其实我们可以加些色彩,比如用红色表示警告,绿色表示结果正常等.网上也有几篇类似的帖子,但是没有把问题讲清楚,贴的代码也不是太清晰.这里,对Win ...

  4. Windows —— cmd命令

    Windows —— cmd命令 cd 命令 进入cmd的默认目录:默认为 C:\Users\Administrator> 进入文件夹:cd 文件夹名 返回上一层目录:cd.. 切换目录: 清屏 ...

  5. windows cmd命令显示UTF8设置

    windows cmd命令显示UTF8设置   在中文Windows系统中,如果一个文本文件是UTF-8编码的,那么在CMD.exe命令行窗口(所谓的DOS窗口)中不能正确显示文件中的内容.在默认情况 ...

  6. windows cmd 命令和 linux 命令

    windows cmd 命令和 linux 命令 常用的内部命令有md.cd.rd.dir.path.copy.type.edit.ren.del.cls.ver.date.time.prompt.常 ...

  7. SQL server 存储过程 C#调用Windows CMD命令并返回输出结果 Mysql删除重复数据保留最小的id C# 取字符串中间文本 取字符串左边 取字符串右边 C# JSON格式数据高级用法

    create proc insertLog@Title nvarchar(50),@Contents nvarchar(max),@UserId int,@CreateTime datetimeasi ...

  8. Python实现Windows CMD命令行彩色输出

    #! /usr/bin/env python #coding=utf-8   import ctypes,sys   STD_INPUT_HANDLE = -10 STD_OUTPUT_HANDLE ...

  9. Windows cmd 命令行基本操作

    Windows cmd 命令行基本操作 1. 进入到指定根目录 注意:不区分大小写 例如进入到 D 盘 2. 进入到指定的目录 例如 (如果目录文件名太长,可以使用 tab 键来自动补全.重复按可以进 ...

随机推荐

  1. BZOJ 1497 最大获利

    最大权闭合子图 对于这个题,可以抽象成一个图论模型,如果我们把用户与其要求建立的中转站连边,获得的利益看成正权值,付出的代价看成负权值,我们可以发现,选取一个用户的时候,就相当于选取了一个闭合子图. ...

  2. web页面简单布局的修改,测试中的应用

    在做功能测试的时候发现,界面显示不美观,觉得登录按钮应向上移动,那么如何移动呢? 很简单:使用开发者工具找到这个按钮所在的div,修改其中的属性值,top值减小,即可实现按钮向上移动,具体可以看效果

  3. 【BZOJ3814】【清华集训2014】简单回路 状压DP

    题目描述 给你一个\(n\times m\)的网格图和\(k\)个障碍,有\(q\)个询问,每次问你有多少个不同的不经过任何一个障碍点且经过\((x,y)\)与\((x+1,y)\)之间的简单回路 \ ...

  4. Codeforces Round #502 (in memory of Leopoldo Taravilse, Div. 1 + Div. 2)

    第一次参加cf的比赛 有点小幸运也有点小遗憾 给自己定个小目标 1500[对啊我就是很菜qvq A. The Rank 难度:普及- n位学生 每个学生有四个分数 然鹅我们只需要知道他的分数和 按分数 ...

  5. 「ZJOI2015」地震后的幻想乡 解题报告

    「ZJOI2015」地震后的幻想乡 想了半天,打开洛谷题解一看,最高票是_rqy的,一堆密密麻麻的积分差点把我吓跑. 据说有三种解法,然而我只学会了一种最辣鸡的凡人解法. 题意:给一个无向图\(G\) ...

  6. 「JLOI2015」管道连接 解题报告

    「JLOI2015」管道连接 先按照斯坦纳树求一个 然后合并成斯坦纳森林 直接枚举树的集合再dp一下就好了 Code: #include <cstdio> #include <cct ...

  7. 「TJOI2015」组合数学 解题报告

    「TJOI2015」组合数学 这不是个贪心吗? 怎么都最小链覆盖=最大点独立集去了 注意到一个点出度最多只有2,可以贪心一下出度的去向 按读入顺序处理就可以,维护一个\(res_i\)数组,表示上一行 ...

  8. Atlantis HDU - 1542 (扫描线,线段树)

    扫描线的模板题,先把信息接收,然后排序,记录下上边和下边,然后用一条虚拟的线从下往上扫.如果我扫到的是下边,那么久用线段树在这个区间内加上1,表示这个区间现在是有的,等我扫描到上边的时候在加上-1,把 ...

  9. [HAOI2015]按位或(容斥+前缀和)

    题目描述 刚开始你有一个数字0,每一秒钟你会随机选择一个[0,2^n-1]的数字,与你手上的数字进行或(c++,c的|,pascal 的or)操作.选择数字i的概率是p[i].保证0<=p[i] ...

  10. centos7下安装vnc更改vnc默认端口号

    应用场景:某些情景下,需要用的linux的桌面环境,Ubuntu的桌面性能在linux发行版中算是数一数二的,如果不熟悉Debian系统,Centos/RHEL系列也行:   我这里的场景是开发人员不 ...