在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