【发布时间】:2026-02-17 19:10:01
【问题描述】:
我在通过 .jar 文件写入属性文件时遇到问题。 我的“输出”仅在 Eclipse 中有效,但不知道如何更改它并使其在可执行的 .jar 中有效。
FileOutputStream output = new FileOutputStream("src/application/data.properties",true);
InputStream in = Login.class.getResourceAsStream("data.properties");
properties.load(in);
properties.setProperty(username+"Username", username);
properties.setProperty(username+"Password", password);
properties.store(output, formattedDate);
编辑:
我没有收到任何错误。我想将此“用户名”和“密码”存储在项目中包含的 data.properties 文件中。当我在 Eclipse 中运行它时,它可以工作。当我通过 .jar 文件运行它时,它不会将这些数据写入属性文件。我想,这是因为当它在运行 jar 时创建“输出”时,它仅在本地创建,并且它没有为我提供对适当文件的访问权限,但我可能错了。我获得了这种访问权限,当我通过 .getResourceAsStream() 创建“in”时,我可以处理这个现有文件,但不知道如何以类似的方式创建“输出”,并且能够将数据存储在现有文件中项目。 我通过“导出 -> 可运行的 JAR 文件”在 eclipse 中创建 .jar 并通过双击运行它。
【问题讨论】:
-
您没有提供足够的信息。你得到什么?你想要什么?你如何创建这个罐子?你如何运行它?我们无法猜测。
-
当它作为 jar 在不同位置运行时,文件夹“src/application”可能不存在。你有错误吗?
-
我没有收到任何错误。
-
当您从 .jar 文件运行时,您的开发项目不可见并且实际上不存在。将 .jar 文件中的 data.properties 作为 prototype 用于存储在用户主目录下某处的全新 data.properties。见*.com/documentation/java/2433/… 和*.com/questions/35388882/…。
标签: java eclipse jar properties executable