<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆 - 42  文章 - 71  trackbacks - 0
    <2008年5月>
    27282930123
    45678910
    11121314151617
    18192021222324
    25262728293031
    1234567

    常用鏈接

    留言簿

    隨筆檔案

    文章分類

    文章檔案

    搜索

    •  

    最新評論

    閱讀排行榜

    評論排行榜

    Technorati 標簽: ,,

    自從有了Ant,好像就不用再自己寫很長很長的CLASSPATH了,尤其是有時候手動編寫這個變量還可能誤寫,導致出現了ClassNotFound錯誤時查了很久都不知道是怎么回事。

    對于比較大的項目,搞一個Ant是很不錯的事情,但是有時候就是做一些簡單的測試,我就不再費力氣寫Ant了,直接在命令行輸入命令。但是設置CLASSPATH在這個時候就比較頭疼了,尤其是現在的Java應用,隨便寫個簡單的東西可能就需要一堆的框架,就會有一堆的jar文件要加入到CLASSPATH里面了。想起來Windows的批處理有For命令,就拿來研究一下:

    在命令行窗口:

    set cp=

    for %f in (*.jar) do set cp=%cp%;%f

    echo %cp%

    輸出結果是:

    %cp%;servlet-api.jar

    這個明顯是不對的啊,于是查看Windows的Set命令的幫助,發現也存在類似在編程中變量生命周期的問題,需要打開V模式才能夠延展變量生命周期。默認情況下,V模式是關閉的。

    于是,在命令行窗口進行如下命令:

    cmd /V:ON (這一句是打開cmd的V模式)

    set cp=

    for %f in (*.jar) do set cp=!cp!;%f

    echo %cp%

    輸出結果是:

    ;commons-el.jar;jasper-compiler-jdt.jar;jasper-compiler.jar;jasper-runtime.jar;jsp-api.jar;naming-factory-dbcp.jar;naming-factory.jar;naming-resources.jar;servlet-api.jar

     

    正是我們需要的。當然了,還要加上全路徑的。還有要注意的就似乎在for循環中,變量cp的引用不再是%%了,而是!!了,真是搞不懂MS怎么會這么奇怪。相比而言Unix/Linux的Shell就好很多了。

     

    注意,如果是在.bat文件中運行,好像不能直接使用cmd /V:ON命令,需要手動先打開;另外,在批處理文件中的for循環的變量是要兩個%來表達的,如果在批處理文件中,就得這么寫:

    for %%f in (*.jar) do set cp=!cp!;%%f

     

    Windows的批處理文件還是很有意思的,抽空得整理的好的教程了,呵呵。

    posted on 2008-05-29 00:12 YODA 閱讀(3365) 評論(4)  編輯  收藏

    FeedBack:
    # re: 利用Windows 批處理文件自動生成CLASSPATH 2008-05-29 09:59 lingos
    這個比較簡單,如果*.jar是在子文件夾下呢?  回復  更多評論
      
    # re: 利用Windows 批處理文件自動生成CLASSPATH 2008-05-29 10:00 YODA
    for /R %f in (*.jar) do xxxxx
    for命令加上/R參數就可以遞歸子文件夾  回復  更多評論
      
    # re: 利用Windows 批處理文件自動生成CLASSPATH 2008-05-29 12:36 BeanSoft
    非常有用!
    @echo off
    set cp=
    for %%i in (".\lib\*.jar") do call setenv.bat %%i
    java -cp %cp% MyApp

    setenv.bat
    set cp=%cp%;%1  回復  更多評論
      
    # re: 利用Windows 批處理文件自動生成CLASSPATH 2008-05-29 13:46 YODA
    嗯,BeanSoft寫的也是一個很好的辦法  回復  更多評論
      

    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲Av无码国产一区二区| 亚洲人成高清在线播放| 一级一级一片免费高清| 国产伦一区二区三区免费| 亚洲av永久无码精品秋霞电影秋 | 精品无码无人网站免费视频| 中文字幕亚洲综合久久菠萝蜜 | 免费无遮挡无遮羞在线看| 亚洲精品国产va在线观看蜜芽| 五月婷婷免费视频| 亚洲男人的天堂www| 国产精品免费AV片在线观看| 亚洲美女中文字幕| 女人与禽交视频免费看| 国产亚洲一卡2卡3卡4卡新区 | 东方aⅴ免费观看久久av| 亚洲国产综合专区电影在线 | 亚洲精品二三区伊人久久| 永久免费av无码不卡在线观看| 亚洲欧好州第一的日产suv| 四虎AV永久在线精品免费观看| 一区二区三区免费视频播放器| 亚洲熟妇无码另类久久久| 久久久久久AV无码免费网站| 午夜在线a亚洲v天堂网2019| 四虎永久免费影院| 久久久久久久99精品免费观看 | 中文字幕亚洲图片| 亚洲综合免费视频| 日韩成人精品日本亚洲| 亚洲男同帅GAY片在线观看| 思思re热免费精品视频66 | 国产精品免费高清在线观看| 亚洲一级毛片免费看| 亚洲电影日韩精品| 99在线观看免费视频| 美女尿口扒开图片免费| 日韩精品一区二区亚洲AV观看 | 国产真人无遮挡作爱免费视频 | 无码专区永久免费AV网站| 一级做a爰性色毛片免费|