【发布时间】:2025-12-24 05:50:10
【问题描述】:
我正在开发一个自定义的 Maven 插件。当我阅读自定义插件的属性文件时,一切都很好,但是当我将它作为插件在不同的项目中运行时,我如何才能获得该项目的属性文件,它总是像往常一样查看自身的资源目录,因为:
我有这个:
Properties allProperties = new Properties();
allProperties.load(this.getClass().getResourceAsStream("/tokens.properties"));
我试过了:
Properties allProperties = new Properties();
ClassLoader loader = Thread.currentThread().getContextClassLoader();
allProperties.load(loader.getResourceAsStream("/tokens.properties"));
但是没有用。有什么想法吗?
PS:当我运行它时,它会从插件属性文件中读取。我的属性文件在
src/main/resources
我在我的 poms 中使用它:
<build>
...
<resources>
<resource>
<directory>src/main/resources/</directory>
<filtering>true</filtering>
</resource>
</resources>
...
</build>
还有我的属性文件:
project.version = ${project.version}
【问题讨论】:
-
什么目录包含“tokens.properties”?
-
@Code-Guru 我已经编辑了我的问题。
-
您想从插件的 JAR 中读取属性文件,还是从 Eclipse 中加载的当前项目目录中读取属性文件?
-
@Code-Guru 来自另一个 Jar(但另一个 jar 依赖于我的插件)
标签: java properties maven-plugin-development