提问人:Juan 提问时间:2/24/2022 更新时间:2/24/2022 访问量:900
从 .jar 文件读取外部 json 文件
Read external json file from .jar file
问:
我想在执行 jar 时从作为参数接收的 json 文件中使用 Gson 构建一个 json 对象。
这是我用来读取json文件的方法
public static JsonObject loadData(String filename) throws FileNotFoundException {
Gson parser = new Gson();
File jsonFile = new File(filename);
BufferedReader br = null;
JsonObject fileParsed;
try {
br = new BufferedReader(new FileReader(jsonFile));
} catch (FileNotFoundException e) {
e.printStackTrace();
}
try {
fileParsed = parser.fromJson(br, JsonObject.class);
} catch (JsonSyntaxException e) {
throw e;
}
return fileParsed;
}
当我尝试使用框架(IntelliJ 或 Eclipse)运行它时,这种方法在生成 jar 之前是有效的,但是如果我生成一个 jar 文件,然后我尝试获取不在 jar 文件中的 json 文件不起作用。
如果我执行java -jar file.jar jsonFile.json,我会得到java.lang.NullPointerException
我尝试了一些其他方法,但总是NullPointerException。对此有任何线索吗? 谢谢!
答: 暂无答案
评论
br
FileNotFoundException
JsonSyntaxException