我目前的设置包括:
引用parentPom并使用我的customPlugin的各种项目。当用户使用maven2时,customPlugin应该是version2 - 当他们使用maven3时,它应该是customPlugin的version3。
我最初遵循此guide
如上页所述,可以使用配置文件和{basedir}属性来检测maven版本。检测机制在parentPom中实现。我遇到的问题是我的项目没有激活配置文件中的maven3检测机制。我相信这是因为配置文件不是在maven中继承的。
您建议您做什么以便: - 避免在子poms中明确声明pluginVersion - 提供maven2和maven3兼容性
非常感谢你的帮助。
答案 0 :(得分:2)
在父POM级别的<build><pluginManagement> ...
内部配置文件(由Maven版本激活)中使用您的插件版本声明。然后,你可以在任何地方(在父POM或模块下)使用插件而无需指定版本,它应该可以根据需要使用。