我用netbeans做了个东西
.properties文件里保存的是数据库的密码等信息
props.load(new FileInputStream("mysql_init.properties"));
这样放在工程的根目录就能获取。然后用netbeans打包成.jar
这样运行就找不到.properties文件了,我把那个文件放在jar文件的旁边也不行
请问这是什么原因?我该放在哪里?或者说,java里有没有一个方法,获得当前程序的运行目录。
就好像servlet里的String path = 、getServletContext().getRealPath("/");一样谢谢各位。

解决方案 »

  1.   

    你是怎么运行的?
    使用bat或sh文件还是双击?如果是双击,jar文件的话:
    linux:应该把properties文件放在使用文件夹下。。
    windows:应该把properties文件放在与jar同样的文件夹下
    如果使用bat或sh文件启动的话,应该把properties文件放在也bat或sh文件同目录的地方 。
    如果使用控制台或dos窗口运行的话,应该把它放在当前控制台或dos窗口的路径的目录下:
    如:你就应该把properties文件放在f:\liliang\myTools目录下
      

  2.   

    如果是双击,jar文件的话: 
    linux:应该把properties文件放在当前登录的用户的文件夹下。。 
    如:使用llsy用户登录:放到:home/llsy/目录下