【问题标题】:Writing Maven Plugin: How to replace Maven properties on reading an input file?编写 Maven 插件:如何在读取输入文件时替换 Maven 属性?
【发布时间】:2011-07-12 19:44:24
【问题描述】:

我正在编写一个自定义的 Maven 插件,它正在做一些自定义的事情,包括调用 Ant。我要使用的 build.xml 总是相同的,因此我将它作为资源文件添加到插件中,并在运行时从类路径中读取它。也就是说,它不是由调用我的插件的 Maven 项目提供的,而是在插件本身中提供的。

这个 build.xml 可能包含 Maven 属性,例如 ${project.name}${project.build.directory} 等,当然这些属性是目标 Maven 项目的属性。因此,在调用 Ant 之前,我必须将输入文件中的所有这些属性替换为实际值。

我该怎么做?我想肯定有比自己设置替换表更方便的方法,因为 Maven 一直在对所有类型的文件进行这种属性替换......

非常感谢任何帮助!

谢谢, 克里斯托弗。

【问题讨论】:

    标签: plugins maven


    【解决方案1】:

    看看Maven Ant Tasks,它应该可以让你解析你的pom,尤其是POM Task

    【讨论】:

    • 好吧,这实际上不是我想做的……从 Ant 构建文件中读取 POM。相反,在我的 Maven 插件中,我想从类路径中读取 Ant 构建文件并在其中进行一些替换,然后将结果写入临时文件并调用 Ant(通过 maven-antrun-plugin)来执行构建文件。所有这些都有效,但我目前必须手动替换所有属性,一次一个。我认为 Maven 中一定有一些实用功能可以帮助...
    猜你喜欢
    • 2015-04-21
    • 1970-01-01
    • 2016-08-01
    • 2012-03-09
    • 2013-01-20
    • 2011-04-06
    • 2013-08-02
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多