我正在尝试创建一个Maven插件,用于在面向服务的体系结构中独立运行测试。给定项目布局如:
Service
|- webapp
|- int-test
我想:
我认为最好的方法是将插件的配置添加到父POM,然后用户可以简单地检查项目,cd进入父pom的目录并执行插件的目标来运行测试本地运行的服务。
我不太确定如何执行上面的第2步。理想情况下,我宁愿不让插件更改int-test/src/test/resources
或webapp/src/main/config
中的属性文件,因为人们可能会错误地检查这些更改。我宁愿这些替换只出现在各自的target/
目录中。
我已经看到过滤可以用来解决类似的问题,但我还没有看到任何涉及在模块之间共享动态生成属性的解决方案。
我们非常感谢任何建议。
答案 0 :(得分:0)
您可以构建自定义maven构建扩展并从cetntral服务动态检索这些属性,并在构建过程开始后立即将它们注入内存中的POM。确实,这就是我们在公司设置中解决这个问题的方法。
我刚发布了一份完整的食谱to this Stackoverflow answer