这是一个奇怪的请求,但这是场景。我正在编写自定义maven插件,基本上操纵构建版本然后将安装或部署修改后的jar。该插件通过命令行和构建配置文件调用。
插件都有类似的行为,因此该解决方案适用于所有人。目前我正在通过MavenProject.setVersion(newVersion);在内存中操作项目版本。这适用于使用新版本构建本地jar,但是一旦MavenInstaller执行,newVersion jar就会安装在我的本地仓库中,并带有旧版本信息和位置。有没有办法可以阻止或覆盖这种行为?该插件没有直接使用Maven Installer或Deployer,只是构建阶段的一部分。
文件执行如下:mvn install -Pincrement,增量配置文件与process-sources阶段相关联。
编辑1:我正在研究用一个插件来覆盖安装/部署生命周期,这个插件基本上可以处理我的计划,同时还处理安装/部署的正常行为。 http://www.sonatype.com/books/mvnref-book/reference/writing-plugins-sect-override-default-lifecycle.html
编辑2:在编辑1之后,我能够覆盖默认生命周期,在这种情况下,使用自定义解决方案进行安装和部署。我不喜欢它需要一个自定义包,所以包装标签不再引用真正的包装类型,并要求我设置一个额外的标签,以便我可以查找类型。