如何以最干净的方式访问jar文件(不在其中)附近的文件?
我尝试了各种组合,例如File configFile = new File("..//pinger.properties");
和Pinger.class.getResourceAsStream("pinger.properties");
,但文件未被阅读。
谢谢!
答案 0 :(得分:0)
您可以尝试使用java.util.Properties课程。
Properties properties = new Properties();
properties.load(getClass().getClassLoader().getResourceAsStream("pinger.properties"));
另一个示例是here。
答案 1 :(得分:0)
如何以最干净的方式访问jar文件(不在其中)附近的文件?
使用相对路径 1 添加引用依赖Jar的清单文件。然后使用getResource(String)
获取资源的URL
。
答案 2 :(得分:0)
获取jar文件的位置
考虑以下功能
public String path(String filename)
{
URL url1 = getClass().getResource("");
String ur=url1.toString();
ur=ur.substring(9);
String truepath[]=ur.split("myjar.jar!");
truepath[0]=truepath[0].replaceAll("%20"," ");
return truepath[0]+filename;
}//This method will work on Windows and Linux as well.
//You can alternatively use the following line to get the path of your jar file
//classname.class.getProtectionDomain().getCodeSource().getLocation().getPath();
假设您的jar文件位于D:\ Test \ dist
中然后path()将返回/ D:/ Test / dist / filename