jar读取外部和内部配置文件的问题

Posted Never be the same

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jar读取外部和内部配置文件的问题相关的知识,希望对你有一定的参考价值。

最近修改XX应用的时候,涉及到需要在jar包中读取工程配置文件的问题。在jar包中,读取配置文件,需要单独处理。

项目中的一些配置文件,如dbconfig.properties log4j.xml 不想打包进jar。

因为可能会修改其中的一些配置信息,打包进jar,就变得比较笨拙,不方便修改文件。

可以用如下方式,实现在jar包中读取外部配置文件。

方法一:

关键代码。

读取properties文件方法:

InputStream ins = getClass().getResourceAsStream("/resource/dbconfig.properties"); 

 

但是log4j.xml 又需要单独处理:

PropertyConfigurator.configure(System.getProperty("user.dir") + "/resource/log4j.xml"); 

 

方法二:

配置文件out.properties和jiar包在同一个目录下面:

FileInputStream inputStream1 = new FileInputStream("out.properties");  

 

配置文件in.properties在jar包内部:

InputStream inputStream2 = a.class.getResourceAsStream("/in.properties"); 


以上是关于jar读取外部和内部配置文件的问题的主要内容,如果未能解决你的问题,请参考以下文章

自定义jar配置文件问题?

从 jar 中读取外部配置文件

jar包调用jar包内部和外部的配置文件

Springboot打成JAR包后读取外部配置文件

jar方式运行项目-读取jar包中的文件

jar包启动配置文件application.property存放位置