我有一个从属性文件(主机,端口)获取值的程序,属性文件的路径目前开始硬编码,但我希望能够编译并将属性文件放置在与我编译的类(在bin/中)相同的目录中,当我制作jar并运行程序时,它应该从那里自动获取值,我该如何做到这一点?
您应该能够使用"copy"任务来复制bin目录中的属性文件,该目录与需要读取属性的java文件位于相同的包目录中。然后,使用"jar"任务对程序进行jar。
在java程序中,您现在应该能够以这种方式读取属性:
Properties props = new Properties();
props.load(getClass().getResourceAsStream("my.properties"));
String host = props.get("hostname");
String port = props.get("port");