maven插件(1)-plugin.xml说明

这篇博客详细解析了maven插件的配置文件`plugin.xml`的结构和各个元素的作用,包括插件坐标、目标配置、参数设定等。通过实例展示了如何创建并配置一个名为`mavenplugindemo`的插件,以及插件目标如`compile`的执行条件和依赖。此外,还列出了插件依赖的库文件及其版本。
摘要由CSDN通过智能技术生成

<?xml version="1.0" encoding="UTF-8"?>

 

<!-- Generated by maven-plugin-tools 3.2 on 2019-08-06 -->

 

<plugin>

  <name>mavenplugindemo</name>

  <description></description>

  <!-- 坐标 -->

  <groupId>cn.chy</groupId>

  <artifactId>mavenplugindemo</artifactId>

  <version>2.0-SNAPSHOT</version>

  <!-- 插件独一无二的前缀 -->

  <goalPrefix>demo</goalPrefix>

  <!-- 遗留属性,不赞成使用,永远为false -->

  <isolatedRealm>false</isolatedRealm>

  <!-- 定义在父项目中的目标执行是否被子项目继承,true 表示被子项目继承 -->

  <inheritedByDefault>true</inheritedByDefault>

  <mojos>

    <mojo>

      <!-- 目标 -->

      <goal>compile</goal>

      <!-- 该目标就是否由用户在命令行显示的执行, false 表示不再命令行显示执行 -->

      <requiresDirectInvocation>false</requiresDirectInvocation>

      <!-- 指定该目标是否在项目外部运行, true 表示不能在项目外运行 -->

      <requiresProject>true</requiresProject>

      <!-- 是否依赖报告, false 表示不依赖 -->

      <requiresReports>false</requiresReports>

      <!-- true表示目标只会在Maven执行的时候运行一次 -->

      <aggregator>false</aggregator>

      <!-- 指定当Maven在离线模式(-o命令行选项)的时候该目标不能运行。如果一个目

标依赖于网络资源,你就需要将该元素设置成true -->

      <requiresOnline>false</requiresOnline>

      <!-- true,在父项目中配置的mojo就会同样在子项目中生效 -->

      <inheritedByDefault>true</inheritedByDefault>

      <!-- 为该目标绑定一个阶段 -->

      <phase>compile</phase>

      <!-- 初始化类 -->

      <implementation>cn.chy.plugin.MavenPluginCompileMojo</implementation>

      <!-- Mojo默认的语言 -->

      <language>java</language>

      <!-- 创建和管理组件实例,配置成per-lookup,每次Maven

从Plexus获取该mojo的时候,一个新的实例被创建 -->

      <instantiationStrategy>per-lookup</instantiationStrategy>

      <!-- 可用的值是onceper-session和always,没作用,在未来版本的Maven中该属性很有可能被弃用。 -->

      <executionStrategy>once-per-session</executionStrategy>

      <threadSafe>false</threadSafe>

      <parameters>

        <parameter>

          <name>artifactId</name>

          <type>java.lang.String</type>

          <required>false</required>

          <editable>false</editable>

          <description>POM属性</description>

        </parameter>

        <parameter>

          <name>buildDirectory</name>

          <type>java.lang.String</type>

          <required>true</required>

          <editable>true</editable>

          <description>POM属性

项目构建输出目录: 默认target/</description>

        </parameter>

        <parameter>

          <name>describe</name>

          <type>java.lang.String</type>

          <required>false</required>

          <editable>true</editable>

          <description></description>

        </parameter>

        <parameter>

          <name>envJavaHome</name>

          <type>java.lang.String</type>

          <required>false</required>

          <editable>false</editable>

          <description>环境变量

 

备注:mvn help:system</description>

        </parameter>

        <parameter>

          <name>envMavenHome</name>

          <type>java.lang.String</type>

          <required>false</required>

          <editable>fal

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值