2007年10月30日星期二
2007年10月29日星期一
推荐两个小工具
UltraExplorer,可以替换缺省的资源管理器,使用起来很方便,再不用开多个explorer,支持定义favorite文件夹。虽然同类产品有很多,但我觉得UltraExplorer好用、够用,而且免费,所以推荐。
搞java开发的人,经常会开多个黑呼呼的命令行窗口,还要在它们之间来回切换。自然会想到会不会支持多tab命令行窗口的工具呢?google之,果然有这样的工具,PowerCmd is a modern and sleekWindows Command Prompt Replacement that allows you to run multipleconsoles within a single tabbedwindow.帖张图,漂亮吧,最主要还是方便、好用。
2007年10月27日星期六
2007年10月26日星期五
2007年10月25日星期四
2007年10月24日星期三
Tip: 如何利用启动脚本将目录下的多个jar自动加入到classpath中
自己写的java独立程序,一般都需要提供一个脚本来启动程序,就像我们常用的tomcat、weblogic。
在这个脚本中,我们会设置好各种环境变量,最重要的就是classpath了。
通常我们的java程序会用到很多开源的java项目,log4j,apache的commons系列,spring...
写个java应用,没有使用十个八个开源项目,你都不好意思跟人打招呼。
这时,就会碰到一个问题,设置classpath的时候要一个个列出jar包来,例如
setclasspath=%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目录下的所有文件,然后callcpappend.bat,很显然是用这个脚本把前面取出的文件加入到了classpath。
看看cpappend.bat的内容,
if ""%1"" =="""" goto end
set CLASSPATH=%CLASSPATH%;%1
shift
rem Processthe remaining arguments
:setArgs
if ""%1"" == """" goto doneSetArgs
set CLASSPATH=%CLASSPATH% %1
shift
goto setArgs
:doneSetArgs
:end
果然如此。照猫画虎,很快就搞定了自己的脚本。
在这个脚本中,我们会设置好各种环境变量,最重要的就是classpath了。
通常我们的java程序会用到很多开源的java项目,log4j,apache的commons系列,spring...
写个java应用,没有使用十个八个开源项目,你都不好意思跟人打招呼。
这时,就会碰到一个问题,设置classpath的时候要一个个列出jar包来,例如
setclasspath=%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目录下的所有文件,然后callcpappend.bat,很显然是用这个脚本把前面取出的文件加入到了classpath。
看看cpappend.bat的内容,
if ""%1"" =="""" goto end
set CLASSPATH=%CLASSPATH%;%1
shift
rem Processthe remaining arguments
:setArgs
if ""%1"" == """" goto doneSetArgs
set CLASSPATH=%CLASSPATH% %1
shift
goto setArgs
:doneSetArgs
:end
果然如此。照猫画虎,很快就搞定了自己的脚本。
2007年10月20日星期六
订阅:
博文 (Atom)