如何为具有属性文件的Java项目制作可运行的JAR将在运行时进行编辑



我的maven项目是独立的Java应用程序。我需要运行此Form unix框。因此,我制作了一个可运行的jar。但是我必须在每次运行中更新 app.properties 文件中的日期。我尝试了maven jar插件,以使一个具有依赖性的脂肪可运行的jar。它运行正常,但无法编辑 app.properties file

您可以从类(root软件包)中读取属性文件:

Properties properties = new Properties();
properties.load(this.getClass().getResourceAsStream("/app.properties")));

您可以使用这样的自定义类路径启动可运行的jar:

java -cp app.properties:app.jar my.main.AppClass

(您不能使用java -jar,因为忽略了-cp选项)

将文件app.properties放在与app.jar相同的目录中。app.properties的位置将是classPath上的第一个条目,因此JAR中的代码可以如上所示。

如果您确保JAR中还有app.properties的副本,则如果丢失了外部属性文件,则将用作默认值。(请注意,这仅适用于完整的属性文件,而不是单个属性)

最新更新