在2000下命令行长度好像不能超过2k bytes,超过就会报input line is too long.起java程序的时候,如果依赖的jar包很多,classpath一定很长,这时候会没办法运行.Google了一把,也没找到比较满意的答案.
最笨的办法就是把用到的jar包重新再打一个,打成一个.后来在网上看到一篇讲manifest.mf的文章,了解到manifest.mf里面可以通过Class-Path来设置jar包所依赖的包.试了一下,还真的ok.只要在build自己程序的jar包的时候,在manifest.mf里面加上依赖的jar包,这样在用bat起程序的时候,就不用再在classpath里面加这些jar包了.不过build.xml会变得变态一点,比以前稍微难维护一点.有一点需要注意的就是,manifest.mf里面Class-Path的路径是相对其所在的jar包的.比如说这个manifest.mf是包含在test.jar的,那么Class-Path里指定的jar包都是相对于test.jar所在的路径.
有空学习一下manifest的其他的用途.

Blogged with Flock

Tags: java