更新捆绑的资源文件

我正在做以下事情,

String str = "this is the new string"; URL resourceUrl = getClass().getResource("path_to_resource"); File file = new File(resourceUrl.toURI()); BufferedWriter writer = new BufferedWriter(new FileWriter(file)); writer.write(xml); writer.close(); 

在上面的代码中,我试图写入我的一个java包中包含的资源文件。 执行代码后,我的程序执行正常,但文件只更新web-INF中的属性文件,而不是存储它的包。 任何人都可以帮我解释如何实现这一点或我在这里做错了什么? 非常感谢。

您不应该尝试写入与应用程序类一起存储的文件。 根据应用程序服务器的不同,您尝试写入的位置可能无法写入,或者应用程序可能正在从应用程序存档(.war文件)运行。

您应该使用外部文件夹来存储配置和其他应用程序数据。 通常,您通过环境变量或部署期间指定的属性指定此文件夹。