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

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

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

    金陵之風(fēng)塵

    灰塵,也有生活;
    它們?cè)陲L(fēng)中飄著,在煙中戀愛,在暖氣上撫摸;
    它們?cè)诤脦讉€(gè)地方找我……
    posts - 5, comments - 13, trackbacks - 0, articles - 0
      BlogJava :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

         在使用ANT的過程中遇到了問題,工程目錄下的conf目錄存放的是一些配置文件,在程序中需要讀取這此文件。
        使用IDE(如JCreator)編譯運(yùn)行程序,在IDE環(huán)境中增加了classpath路徑“E:\MyProject\conf”后,在Main.java中調(diào)用
          ClassLoader.getSystemResource("default.properties");
        可以查找到default.properties文件并獲得其路徑E:\MyProject\conf\default.properties。
        但是在使用ANT編譯運(yùn)行時(shí),正確設(shè)置了<classpath>,可還是無法調(diào)用ClassLoader.getSystemResource查找到文件。

    工程的目錄如下:
    E:\MyProject
     |- build
     |  |- classes
     |  |  |- app
     |  |     |- Main.class
     |  |- test
     |  |  |- app
     |        |- MainTest.class
     |
     |- src
     |  |- app
     |     |- Main.java
     |
     |- test
     |  |- app
     |     |- Main.Test.java
     |
     |- lib
     |  |- commons-lang-2.4.jar
     |
     |- conf
     |  |- default.properties
     |
     |- build.xml

    build.xml部分內(nèi)容如下:
    <?xml version="1.0"?>

    <project name="myproject" default="test" basedir=".">
      <property name="build.dir" value="build"/>
      <property name="src" value="src"/>
      <property name="test.src" value="test"/>
      <property name="lib.dir" value="lib"/>
      <property name="conf.dir" value="conf"/>

      <path id="lib.path">
        <fileset dir="${lib.dir}">
          <include name="**/*.jar"/>
        </fileset>
      </path>
     
      <path id="run.classpath">
        <pathelement location="${build.dir}/classes"/>
        <pathelement location="${conf.dir}"/> <!-- 已經(jīng)添加了conf目錄 -->
        <path refid="lib.path"/>
      </path>
     
      <!-- 測(cè)試default.properties是否存在 -->
      <available property="have.conf" resource="default.properties">
        <classpath refid="run.classpath"/>
      </available>
     
      <!-- 運(yùn)行ant echo時(shí),返回have.conf: true,證明可以找到文件 -->
      <target name="echo">
        <echo message="have.conf: ${have.conf}"/>
      </target>
     
      <!-- 運(yùn)行ant run時(shí),ClassLoader.getSystemResource("default.properties")返回卻為null -->
      <target name="run" depends="compile">
        <java classname="app.Main">
          <classpath refid="run.classpath"/>
        </java>
      </target>
    </project>


    評(píng)論

    # re: 使用ANT,無法訪問conf目錄下的文件  回復(fù)  更多評(píng)論   

    2008-08-07 23:51 by 風(fēng)塵仆仆
    搞定了,不應(yīng)該使用表態(tài)的ClassLoader.getSystemResource("default.properties");

    應(yīng)該:
    ClassLoader classloader = Thread.currentThread().getContextClassLoader();
    URL url = classloader.getResource("default.properties");

    參考Log4j源代碼Loader.java

    只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。


    網(wǎng)站導(dǎo)航:
     
    主站蜘蛛池模板: 久久国产亚洲电影天堂| 亚洲七七久久精品中文国产| 亚洲成熟xxxxx电影| 日韩精品无码免费专区午夜 | 18禁黄网站禁片免费观看不卡| 亚洲男人的天堂www| 三年片免费观看大全国语| 国产亚洲美女精品久久久| 一本久久免费视频| 中文字幕精品亚洲无线码一区应用| 日本在线观看免费高清| 91麻豆国产自产在线观看亚洲 | 国产aⅴ无码专区亚洲av| 国内精品免费在线观看 | 亚洲精品国产成人影院| 大妹子影视剧在线观看全集免费| ZZIJZZIJ亚洲日本少妇JIZJIZ| 99久久免费国产精精品| 亚洲精品免费视频| 妻子5免费完整高清电视| 亚洲欧美日韩自偷自拍| 在线a亚洲v天堂网2018| 伊人久久大香线蕉免费视频| 亚洲AV第一页国产精品| 成人免费AA片在线观看| 国产亚洲欧美在线观看| 亚洲欭美日韩颜射在线二| 久久午夜免费鲁丝片| 77777午夜亚洲| yy6080亚洲一级理论| 成人黄网站片免费视频| 亚洲成人一级电影| 国产高清在线免费视频| 精品多毛少妇人妻AV免费久久| 亚洲国产综合专区在线电影 | 日韩亚洲综合精品国产| 国产AV无码专区亚洲AV男同| 青青青国产在线观看免费网站| 西西人体大胆免费视频| 亚洲伊人tv综合网色| 国产一区二区免费在线|