【发布时间】:2012-09-08 07:12:14
【问题描述】:
我有一个多模块 Maven 项目,该项目有一个“数据库”模块,用于拆除/设置所有后续模块的集成测试所需的数据库。因为它是一个脚本而不是 Java 模块,所以 Maven 无法解析任何依赖项,所以它似乎总是最后执行。
是否有覆盖父 POM 中执行顺序的选项?
【问题讨论】:
标签: maven build multi-module
我有一个多模块 Maven 项目,该项目有一个“数据库”模块,用于拆除/设置所有后续模块的集成测试所需的数据库。因为它是一个脚本而不是 Java 模块,所以 Maven 无法解析任何依赖项,所以它似乎总是最后执行。
是否有覆盖父 POM 中执行顺序的选项?
【问题讨论】:
标签: maven build multi-module
OK maven 显然尊重在父模块中指定的顺序模块,所以这很好用:
<modules>
<module>database</module>
<module>dao</module>
<module>business</module>
<module>web</module>
</modules>
【讨论】:
最好的办法是创建一个像whatever-it 一样的单独模块,并定义对适当模块的依赖关系,从而自动定义执行顺序。这样可以确保始终以正确的顺序运行。不保证模块中给出的顺序。所以最好使用依赖项。
【讨论】:
查看post,了解 maven 如何对模块进行排序。如果您的构建没有遵循模块的顺序,那应该是由于帖子中的原因之一。
http://maven.apache.org/guides/mini/guide-multiple-modules.html
【讨论】: