如何利用启动脚本将目录下的多个jar自动加入到classpath中

2024-12-21 10:42:59
推荐回答(1个)
回答1:

在这个脚本中,我们会设置好各种环境变量,最重要的就是classpath了。 写个java应用,没有使用十个八个开源项目,你都不好意思跟人打招呼。 这时,就会碰到一个问题,设置classpath的时候要一个个列出jar包来,例如set classpath=%classpath%;./lib/xxx.jar;./lib/xxx.jar;./lib/xxx.jar;./lib/xxx.jar;....是不是觉得很烦,有多少个jar都要列出来。于是google了一下,问题顺利解决,答案就在本机上有。 打开tomcat的启动脚本,注意到这一部分:for %%i in (%TOMCAT_HOME%\lib\*.*) do call %TOMCAT_HOME%\bin\cpappend.bat %%i循环取lib目录下的所有文件,然后call cpappend.bat,很显然是用这个脚本把前面取出的文件加入到了classpath。 看看cpappend.bat的内容,if ""%1"" == """" goto end set CLASSPATH=%CLASSPATH%;%1 shiftrem Process the remaining arguments:setArgsif ""%1"" == """" goto doneSetArgs set CLASSPATH=%CLASSPATH% %1shiftgoto setArgs :end果然如此。照猫画虎,很快就搞定了自己的脚本。