gpt4 book ai didi

java - Maven 插件开发 : goal dependency

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:11:54 26 4
gpt4 key购买 nike

很难为我的问题找到合适的搜索查询,所以我希望它不会重复。

我正在开发没有多少目标的 Maven 插件。我想将其中两个组合在链中(生命周期?)。在执行 clean-checkout 目标之前,我想先执行 checkout 目标。我正在使用注释方法并尝试使用 @Execute 注释来指出应该执行哪个目标。插件编译但没有按照我假设的方式执行,因为在执行 clean-checkout 时没有前面的 checkout 目标。

@Mojo(name = "checkout", defaultPhase = LifecyclePhase.GENERATE_SOURCES)
public class Checkout extends AbstractMojo {

@Mojo(name = "clean-checkout", defaultPhase = LifecyclePhase.GENERATE_SOURCES)
@Execute(goal = "checkout", phase = LifecyclePhase.GENERATE_SOURCES)
public class CleanCheckout extends AbstractMojo {

如果没有 defaultPhasephase 属性,构建将失败。

我哪里做错了?

最佳答案

定义自定义生命周期可能会对您有所帮助。两年前,我更详细地分析了 maven-release-plugin 并注意到它们使用自己的生命周期。

在这里您可以找到它们的生命周期定义: http://svn.apache.org/viewvc/maven/release/tags/maven-release-2.3.2/maven-release-manager/src/main/components-fragment.xml?view=markup

此外,我在 Sonatype 的 Mavenbook 中找到了详细信息: http://www.sonatype.com/books/mvnref-book/reference/writing-plugins-sect-plugins-lifecycle.html

这个有趣的博客还可以帮助您: http://www.sonatype.com/people/2009/08/create-a-customized-build-process-in-maven/

关于java - Maven 插件开发 : goal dependency,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12600416/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com