我正在尝试配置 Spring bean 的属性以显示 Maven 构件的版本。我需要在加载 bean 时(而不是在运行时)配置该属性。
applicationContext.xml:
<bean id="myBean" class="com.domain.ClassName">
<property name="version" value="${???????}" />
</bean>
com.domain.ClassName:
private String version;
public String getVersion() {
return version;
}
public void setVersion(String version) {
this.version = version;
}
有没有办法做到这一点?更一般地说,是否有一种简单的方法可以从 Spring xml 上的 POM xml 访问属性?
谢谢
最佳答案
你应该看看 maven 资源插件。 看 : http://maven.apache.org/plugins/maven-resources-plugin/examples/filter.html
基本上这个想法是,在构建您的应用程序时,您将过滤一些项目文件以用您想要的内容替换一些文本(在您的情况下,您希望将 pom.xml
中声明的版本放入您的 spring.xml
)
这里的关键是要理解,在构建时,maven 将在运行时使用的 spring 配置文件中进行一些替换。
关于java - 将 Maven Artifact 版本配置为 Spring 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29168222/