上次在文章[url]http://soulshard.iteye.com/blog/346453[/url]中总结了打包可执行jar包需要注意的一些要点,但是有时候不一定可以随意修改MANIFEST.MF文件,如果在jar包中有多个包含main方法的类切换起来不方便,而且引用的jar包多了,在MANIFEST.MF中一个一个写出来也是很让人郁闷的事情。下面是一个bat执行脚本,通过脚本添加ClassPath来运行Java程序。
[code]
@echo off
if '%1=='## goto ENVSET
SET APPHOME=%~dp0
SET LIBDIR=%APPHOME%lib
SET CLSPATH=.
FOR %%c in (%LIBDIR%\*.jar) DO Call %0 ## %%c
goto RUN
:RUN
java -cp %CLSPATH% jar.demo.Main
pause
goto END
:ENVSET
set CLSPATH=%CLSPATH%;%2
goto END
:END
[/code]
[code]
@echo off
if '%1=='## goto ENVSET
SET APPHOME=%~dp0
SET LIBDIR=%APPHOME%lib
SET CLSPATH=.
FOR %%c in (%LIBDIR%\*.jar) DO Call %0 ## %%c
goto RUN
:RUN
java -cp %CLSPATH% jar.demo.Main
pause
goto END
:ENVSET
set CLSPATH=%CLSPATH%;%2
goto END
:END
[/code]