把配置文件放在包里,打成jar包在哪都能读

解决方案 »

  1.   

    你具体什么需求呢?只要jar包和配置文件在同一目录?
      

  2.   

    可以用System.getProperty("user.dir")获取当然运行环境路径,配置文件放在下面就行了。
      

  3.   

    System.getProperty("user.dir")获取的是当前用户工作目录,这个很不好控制的
      

  4.   


    那就放在src同级目录下啊,打成jar包,配置文件和jar放在同级目录就可以了,之前我也是这么干的
      

  5.   

    参考下,我之前研究了下这个问题:http://blog.csdn.net/withiter/article/details/11924095
      

  6.   

    如果楼主把配置文件放到可执行jar相同目录下,那么我可以告诉你一个写法。
    String filePath = new File(getClass().getPropectionDomain().getCodeSource().getLocation().getFile()).getParentFile().getAbsolutePath()+配置文件名;
    这是以前处理配置文件放到jar相同目录下时,无法读取配置文件,我在网上看到某位大牛提供的方法。经过本人测试,此方法确实可行。
      

  7.   

    这样修改配置文件不就变得不方便么那怎么不方便了?那样每次修改不都还要解压包—>修改—>再打包,这样操作,如果对于一个外行人是很不愿意接受这样的方法的,或者说我没有理解你的意思?