java - 是否可以在运行时写入存储在 JAR 中的设置 XML?

标签 java xml jar jaxb runtime

我有大量用户设置想要存储在 XML 文件中。如果可能的话,我想将该 XML 文件保留在 JAR 本身中,但到目前为止,我还没有发现任何允许我这样做的内容(在 Google 上进行了大量搜索,但一无所获)。

我计划使用 JAXB 来处理 XML 文件的读取和写入,但首先我需要知道是否可以在运行时写入 JAR 中的 XML 文件。

到目前为止,getClass().getResourceAsStream() 似乎已经达到目标,只是它只返回一个输入流以从文件中读取。是否有可能在运行时写入作为 JAR 文件中的资源存储的文件?打开该文件进行输出?

最佳答案

Java 进程将锁定类路径上的依赖项。您将无法更改您的 JAR,因为操作系统会告诉您它正在使用中。

java -cp "your_jar.jar;your_jar2.jar" YourMainClass

我能想到的唯一方法就是 load your JAR at runtime ,这样您就可以更改将成为您的应用程序一部分的第二个 jar。

我(有点)理解你为什么这样做,但不要这样做。将配置保留在 JAR 之外。

关于java - 是否可以在运行时写入存储在 JAR 中的设置 XML?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25335786/

相关文章:

java - maven 。将 .DLL 放在 JAR 的根目录中

java - Jenkins hpi 插件有太多的 jar 文件

c# - 如何在 c# .net CF 3.5 中使用 XmlDocument 向 xml 添加属性

java - 包 org.jboss.netty.channel.socket.nio 不存在

Java - 泛型和通配符以及接口(interface)与实现

java - 如何从Java泛型类中提取类以满足编译器?

sql-server - 从表数据创建 XML 元素和值

java - Android ADT 插件无法在 Eclipse 上打开 XML 文件

java - Java 中的注解

java - 当我传递命令行参数时找不到类