Java Maven高级之插件开发详解

作者:IT_小白鼠 时间:2023-05-11 19:10:02 

前言

终于来到了Maven的插件开发,其实Maven的插件并没有想象的那么难,刚开始讲Maven基础的时候就演示了一下JDK是如何打包的,Maven打包只是在JDK打包上封装了一层而已,Maven也支持自定义插件开发

创建

我们先使用quickstart原型创建出一个Maven项目,在pom.xml里面引入一下依赖:


<dependency>
  <groupId>org.apache.maven</groupId>
  <artifactId>maven-plugin-api</artifactId>
  <scope>provided</scope>
  <version>3.0</version>
</dependency>
<dependency>
  <groupId>org.apache.maven.plugin-tools</groupId>
  <artifactId>maven-plugin-annotations</artifactId>
  <version>3.4</version>
  <scope>provided</scope>
</dependency>

添加好依赖后,需修改packaging打包方式:


<packaging>maven-plugin</packaging>

 之前也讲过packaging有哪几种方式,大家可以各自去在下的上篇博客看看

自定义插件

先创建一个类CleanTestPlugin,继承AbstractMojo,这个抽象类是Maven插件开发需实现的一个类,然后实现里面的execute方法

Java Maven高级之插件开发详解

 然后打包并且安装到本地仓库上(命令:mvn clean install)

安装好后,可以在命令行中输入:

Java Maven高级之插件开发详解

 就能看到打印的日志了。

如果想要在插件中打包时传入参数,也是可以支持,这里就写出几个示例:

Java Maven高级之插件开发详解

 然后在其他项目引入改插件的时候,绑定好参数即可

Java Maven高级之插件开发详解

 由于只绑定了clean的生命周期,所以只需执行mvn clean即可

Java Maven高级之插件开发详解

来源:https://blog.csdn.net/qq_40874285/article/details/120384442

标签:Maven,插件
0
投稿

猜你喜欢

  • Java 判断线程池所有任务是否执行完毕的操作

    2021-10-03 09:43:55
  • 关于C#结构体 你需要知道的

    2022-01-04 13:11:49
  • Spring MVC URL地址映射的示例代码

    2022-12-09 19:53:33
  • java web上传文件和下载文件代码片段分享

    2023-10-04 19:50:50
  • Spring整合Junit的使用详解

    2022-11-20 18:33:17
  • Unity 实现给物体替换材质球

    2023-06-28 05:28:24
  • Android EditText追加空格、限制字符等方法示例

    2023-10-02 17:10:47
  • 使用Flutter实现一个走马灯布局的示例代码

    2023-06-19 03:50:03
  • Android Shape属性创建环形进度条

    2021-08-02 09:03:08
  • spring boot 全局异常处理方法汇总

    2021-07-06 22:44:04
  • Android 之Preference控件基本使用示例详解

    2022-10-20 23:42:34
  • Java中Boolean与字符串或者数字1和0的转换实例

    2022-06-27 16:17:19
  • java中类加载与双亲委派机制详解

    2023-12-07 06:34:53
  • C# menuStrip控件实现鼠标滑过自动弹出功能

    2022-09-01 05:18:37
  • 将InputStream转化为base64的实例

    2023-04-24 02:30:59
  • Spring实例化bean的方式代码详解

    2022-04-04 08:46:09
  • Android自定义简单的顶部标题栏

    2023-04-23 06:02:17
  • Android制作漂亮自适布局键盘的方法

    2022-08-04 09:14:53
  • SpringBoot实现简单文件上传功能

    2021-07-22 21:52:49
  • mybatis 逆向生成后遵循java驼峰法则的解决

    2023-03-03 03:22:02
  • asp之家 软件编程 m.aspxhome.com