java 定时调用 bat
引用:http://greatwqs.iteye.com/blog/1310626
目的: 在windows xp下编写bat文件,定时调用java工程中的main.执行特定的程序.
环境目录模拟:
- D:\Program Files\Apache\deploy\XXXXXXXX
- -- conf文件夹
- -- lib文件夹
- -- logs文件夹
- -- run.bat文件
conf文件夹主要存储一些程序需要的配置文件;
lib文件夹主要存储程序执行的jar包和依赖的jar包;
logs文件夹主要存储日志文件;
run.bat为这里需要写的bat调用命令如下;
- # 切换到当前的bat文件系统的位置
- cd /d
- # 设置classpath
- set classpath=./lib/slf4j-log4j12-1.5.0.jar;./lib/xxxxx.jar;./lib/log4j-1.2.12.jar;./lib/sqljdbc4.jar
- # 调用classpath中的一个main类,类CrawlerMainClass含有main方法
- java com.greatwqs.CrawlerMainClass
在./lib/xxxxx.jar打包时,需要制定启动的main方法,最好用工具打包,如eclipse;
正常情况下./lib/xxxxx.jar包中含有一个清单文件夹META-INF,
此文件夹中含有文件MANIFEST.MF,此文件中的内容形如:
- Manifest-Version: 1.0
- Main-Class: com.greatwqs.CrawlerMainClass
这样在调用命令时java com.greatwqs.CrawlerMainClass才能执行.
上面java的环境和bat命令结束,下面设置windows中的定时任务.
windows的定时调用此run.bat文件
操作如下(xp): start-->All programs-->Accessories-->System Tools-->Scheduled Tasks
Scheduled Tasks的面板中 new --> Scheduled Task -->产生一个task-->properties-->
task面板设置:
a. run下brower到上面的run.bat文件
b. set Password 设置密码,通常是登陆的密码;
Schedule面板设置:
a. Advanced 可以设置调用此run.bat的 starttime, endtime, 是否重复运行(执行时间Duration, 每隔多少时间执行一次)设置;
这样一个基于bat调用java设置完毕; 当上面设置好后,windows会自动定时的调用run.bat脚本;在调用时windows桌面窗口中会出现bat调用的黑框.同时在start-->All programs-->Accessories-->System Tools-->Scheduled Tasks面板中相应的任务的状态会变化.