Maven Plugin的@Mojo和@Execute的具体使用

 更新时间:2021年09月13日 15:26:40   作者:sabersword  
本文主要介绍了Maven Plugin的@Mojo和@Execute的具体使用,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文以spring-boot-maven-plugin 2.5.4为例

@Mojo defaultPhase

以spring-boot-maven-plugin:start为例, 他的@Mojo defaultPhase是PRE_INTEGRATION_TEST,该目标默认绑定到此阶段.

@Mojo(name = "start", requiresProject = true, defaultPhase = LifecyclePhase.PRE_INTEGRATION_TEST,
      requiresDependencyResolution = ResolutionScope.TEST)
public class StartMojo extends AbstractRunMojo {
}

在pom中,我们只需要指定goal,就会在PRE_INTEGRATION_TEST阶段执行

<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<executions>
    <execution>
        <id>start</id>
        <goals>
            <goal>start</goal>
        </goals>
        <!--如果额外指定phase=verify,会忽略defaultPhase,而在verify阶段执行-->
        <phase>verify</phase>
    </execution>
</executions>

@Execute phase

以spring-boot-maven-plugin:run为例,他的@Execute phase=TEST_COMPILE,在运行该目标前,让maven先运行一个并行的生命周期,到指定的阶段TEST_COMPLIE为止。到phase执行完,才执行插件目标
所以执行run,总是会运行到TEST_COMPLIE阶段

@Mojo(name = "run", requiresProject = true, defaultPhase = LifecyclePhase.VALIDATE,
      requiresDependencyResolution = ResolutionScope.TEST)
@Execute(phase = LifecyclePhase.TEST_COMPILE)
public class RunMojo extends AbstractRunMojo {

参考资料

maven官方
博客

到此这篇关于Maven Plugin的@Mojo和@Execute的具体使用的文章就介绍到这了,更多相关Maven Plugin @Mojo和@Execute内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家! 

相关文章

  • springmvc mybatis集成配置示例

    springmvc mybatis集成配置示例

    本文主要介绍springmvc+mybatis集成配置,这里提供了实例代码,和简单说明,有需要的小伙伴可以参考下
    2016-09-09
  • java实现简单猜数字

    java实现简单猜数字

    这篇文章主要为大家详细介绍了java实现简单猜数字,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-05-05
  • 详解在Java中如何优雅的停止线程

    详解在Java中如何优雅的停止线程

    线程,作为并发编程的基础单元,允许程序同时执行多个任务,在Java中,线程可以理解为程序中的独立执行路径,通过使用线程,开发者可以创建更加响应灵敏、效率更高的应用程序,本文小编将给大家介绍一下Java中如何优雅的停止线程,需要的朋友可以参考下
    2023-11-11
  • hibernate 配置数据库方言的实现方法

    hibernate 配置数据库方言的实现方法

    这篇文章主要介绍了hibernate 配置数据库方言的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-05-05
  • 解决maven maven.compiler.source和maven.compiler.target的坑

    解决maven maven.compiler.source和maven.compiler.target的坑

    这篇文章主要介绍了解决maven maven.compiler.source和maven.compiler.target的坑,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-12-12
  • 基于Hutool的图片验证码功能模块实现

    基于Hutool的图片验证码功能模块实现

    为了提高系统的安全性,防止接口被暴力刷新,验证码是个好的手段,图片验证码没有短信验证码的费用,其是个人开发者学习的重点,这篇文章主要介绍了基于Hutool的图片验证码功能模块实现,需要的朋友可以参考下
    2022-10-10
  • Java自定义Enum的实现示例

    Java自定义Enum的实现示例

    Java中的自定义Enum类型是一种特殊的类,用于表示固定数量的常量值,本文主要介绍了Java自定义Enum的实现示例,具有一定的参考价值,感兴趣的可以了解一下
    2023-12-12
  • Java+opencv3.2.0实现重映射

    Java+opencv3.2.0实现重映射

    这篇文章主要为大家详细介绍了Java+opencv3.2.0实现重映射的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-02-02
  • java 设计模式(DAO)的实例详解

    java 设计模式(DAO)的实例详解

    这篇文章主要介绍了java 设计模式(DAO)的实例详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下
    2017-09-09
  • Java中DateTimeFormatter的使用方法和案例

    Java中DateTimeFormatter的使用方法和案例

    在Java中,DateTimeFormatter类用于格式化和解析日期时间对象,它是日期时间格式化的强大而灵活的工具,本文将和大家一起探讨Java中DateTimeFormatter的使用方法和案例,需要的朋友可以参考下
    2023-10-10

最新评论