从外部 Jar 加载属性文件

Posted

技术标签:

【中文标题】从外部 Jar 加载属性文件【英文标题】:Loading a Properties File From an External Jar 【发布时间】:2014-12-30 22:33:45 【问题描述】:

我有一个属性文件,它存在于一些外部 jar 中。 给定外部 jar 的路径,如何在 java 中加载此属性文件? (我知道 prperties 文件在 jar 中的位置)

例如,jar 文件:/home/jars/abc.jar 在这个 jar 里面我有 prop/abc.properties。

请注意,jar 不存在于类路径中(所以我不能使用 getResourcesAsStream),而是在运行时获取 jar 的路径。

【问题讨论】:

【参考方案1】:
JarFile jarFile = new JarFile("path/to/jarFile.jar");
InputStream inputStream = jarFile.getInputStream(jarFile.getEntry("path/inside/the/jar/to/propFile.properties"));
Properties properties = new Properties();
properties.load(inputStream);

【讨论】:

以上是关于从外部 Jar 加载属性文件的主要内容,如果未能解决你的问题,请参考以下文章

怎么从外部读取jar包中的资源文件

SpringBoot:加载和读取jar包外面的资源文件

为啥无法从 JAR 文件加载主类清单属性?

从 jar 中读取外部配置文件

外部jar中类的spring boot配置属性

脚本未从外部文件加载 css 属性