Spring如何在运行时获取Maven工件名称

时间:2014-06-18 16:05:40

标签: spring maven maven-plugin spring-integration

我有一个Spring Integration要求,我需要从war文件中外化库和属性文件。我能够通过Maven程序集插件实现这一点,我在其中创建一个可能包含

的zip文件
lib/*.jar 
properties/{artifactId}/*.properties

我将工件ID添加到路径的原因是,我将来会创建100多个战争,并且需要区分它们。

此战争不包含Web.xml,初始化程序是我的一个库文件的一部分。 初始化程序应该知道artifactId以加载正确的属性。

使用maven,maven工件详细信息将发布到

META-INF/maven/${groupId}/${artifactId}/pom.properties
META-INF/maven/${groupId}/${artifactId}/pom.xml

如果我可以将这些文件移到

META-INF/maven/pom.properties
META-INF/maven/pom.xml

我的应用程序将能够从pom.properties中读取工件ID。

我需要帮助来实现这一目标。

或者,如果有任何其他方法,请帮助解决问题。

1 个答案:

答案 0 :(得分:0)

Maven归档程序组件执行此操作:see here at addMavenDescriptor element。似乎无法自定义这些文件的路径。

但我想你需要的每个属性都可以放在一个特定的文件中,所以你只需要创建一个包含你想要的所有信息的资源文件(如属性),让Maven为你过滤该文件。