2012-09-17 25 views
0

我一直在想,是否可以基于一种特征模型(http://en.wikipedia.org/wiki/Feature_model)动态生成子poms(通过XSLT或类似的东西)。dynamic pom动态生成

+0

你的问题太简单了。你能提出一个更具体的问题吗?而且,您真的是指多模块项目中模块的孩子POM或POM吗?你应该明白POM继承和聚合可以在Maven中独立 –

+0

嗨@Adrian,我的意思是最好在处理父pom时创建子poms。虽然我知道这是不可能的! –

回答

0

如果您希望它们成为反应堆构建的一部分,则不需要。

在任何插件开始运行之前,反应器(所有项目的列表以及针对它们运行的​​插件)必须完整且确定。

这就是为什么在(的XPath)/project/parent/groupId/project/parent/artifactId/project/parent/version/project/groupId/project/artifactId/project/version产权置换是不允许的,因为这将导致非确定性构建计划。但是,如果你想通过XSLT创建一堆项目,然后在后续的反应堆(阅读Maven调用)中做些东西,那就行了。

您可以使用Mojo's XML Maven Plugin来为您做XSLT,然后使用Maven Invoker Plugin来分叉一个新的反应堆,但是您将处于一个半途的房子中,并且停留在您配置调用程序的生命周期阶段。

+0

感谢@Stephen的提示,这可能是我应该去的方式 –