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

<?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>false</editable>

          <description></description>

        </parameter>

        <parameter>

          <name>extentParams</name>

          <type>java.util.List</type>

          <required>false</required>

          <editable>true</editable>

          <description></description>

        </parameter>

        <parameter>

          <name>finalName</name>

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

          <required>false</required>

          <editable>false</editable>

          <description>POM属性

打包输出项目名: 默认 ${project.artifactId}-${project.version}</description>

        </parameter>

        <parameter>

          <name>groupId</name>

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

          <required>false</required>

          <editable>false</editable>

          <description>POM属性</description>

        </parameter>

        <parameter>

          <name>javaHome</name>

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

          <required>false</required>

          <editable>false</editable>

          <description>java 系统属性

 

备注:mvn help:system</description>

        </parameter>

        <parameter>

          <name>javaUserHome</name>

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

          <required>false</required>

          <editable>false</editable>

          <description>java 系统属性

 

备注:mvn help:system</description>

        </parameter>

        <parameter>

          <name>outputDirectory</name>

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

          <required>false</required>

          <editable>false</editable>

          <description>POM属性

项目代码编译输出目录: 默认 target/classes/</description>

        </parameter>

        <parameter>

          <name>path</name>

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

          <required>false</required>

          <editable>true</editable>

          <description></description>

        </parameter>

        <parameter>

          <name>project</name>

          <type>org.apache.maven.project.MavenProject</type>

          <required>true</required>

          <editable>false</editable>

          <description></description>

        </parameter>

        <parameter>

          <name>projectBaseDir</name>

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

          <required>false</required>

          <editable>false</editable>

          <description>内置属性

项目根目录</description>

        </parameter>

        <parameter>

          <name>projectVersion</name>

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

          <required>false</required>

          <editable>false</editable>

          <description>POM属性

项目版本</description>

        </parameter>

        <parameter>

          <name>resourceEncoding</name>

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

          <required>false</required>

          <editable>false</editable>

          <description>POM属性</description>

        </parameter>

        <parameter>

          <name>session</name>

          <type>org.apache.maven.execution.MavenSession</type>

          <required>true</required>

          <editable>false</editable>

          <description></description>

        </parameter>

        <parameter>

          <name>sourceDirectory</name>

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

          <required>false</required>

          <editable>false</editable>

          <description>POM属性

项目主源码目录: 默认 src/mian/java</description>

        </parameter>

        <parameter>

          <name>useDefault</name>

          <type>boolean</type>

          <required>false</required>

          <editable>true</editable>

          <description>自定义属性

 

&lt;properties&gt;

  &lt;jar.useDefault&gt;true&lt;/jar.useDefault&gt;

&lt;/properties&gt;</description>

        </parameter>

      </parameters>

      <configuration>

        <artifactId implementation="java.lang.String" default-value="${project.artifactId}"/>

        <buildDirectory implementation="java.lang.String" default-value="${project.build.directory}"/>

        <envJavaHome implementation="java.lang.String" default-value="${env.JAVA_HOME}"/>

        <envMavenHome implementation="java.lang.String" default-value="${env.MAVEN_HOME}"/>

        <finalName implementation="java.lang.String" default-value="${project.build.finalName}"/>

        <groupId implementation="java.lang.String" default-value="${project.groupId}"/>

        <javaHome implementation="java.lang.String" default-value="${java.home}"/>

        <javaUserHome implementation="java.lang.String" default-value="${user.home}"/>

        <outputDirectory implementation="java.lang.String" default-value="${project.build.outputDirectory}"/>

        <project implementation="org.apache.maven.project.MavenProject" default-value="${project}"/>

        <projectBaseDir implementation="java.lang.String" default-value="${basedir}"/>

        <projectVersion implementation="java.lang.String" default-value="${project.version}"/>

        <resourceEncoding implementation="java.lang.String" default-value="${project.build.sourceEncoding}"/>

        <session implementation="org.apache.maven.execution.MavenSession" default-value="${session}"/>

        <sourceDirectory implementation="java.lang.String" default-value="${project.build.sourceDirectory}"/>

        <useDefault implementation="boolean" default-value="false">${jar.useDefault}</useDefault>

      </configuration>

    </mojo>    

  <dependencies>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-plugin-api</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-model</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-artifact</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.eclipse.sisu</groupId>

      <artifactId>org.eclipse.sisu.plexus</artifactId>

      <type>jar</type>

      <version>0.3.3</version>

    </dependency>

    <dependency>

      <groupId>javax.enterprise</groupId>

      <artifactId>cdi-api</artifactId>

      <type>jar</type>

      <version>1.0</version>

    </dependency>

    <dependency>

      <groupId>javax.annotation</groupId>

      <artifactId>jsr250-api</artifactId>

      <type>jar</type>

      <version>1.0</version>

    </dependency>

    <dependency>

      <groupId>org.codehaus.plexus</groupId>

      <artifactId>plexus-utils</artifactId>

      <type>jar</type>

      <version>3.1.0</version>

    </dependency>

    <dependency>

      <groupId>org.codehaus.plexus</groupId>

      <artifactId>plexus-classworlds</artifactId>

      <type>jar</type>

      <version>2.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-core</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-settings</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-settings-builder</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.codehaus.plexus</groupId>

      <artifactId>plexus-interpolation</artifactId>

      <type>jar</type>

      <version>1.24</version>

    </dependency>

    <dependency>

      <groupId>org.sonatype.plexus</groupId>

      <artifactId>plexus-sec-dispatcher</artifactId>

      <type>jar</type>

      <version>1.4</version>

    </dependency>

    <dependency>

      <groupId>org.sonatype.plexus</groupId>

      <artifactId>plexus-cipher</artifactId>

      <type>jar</type>

      <version>1.4</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-builder-support</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-repository-metadata</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-model-builder</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven</groupId>

      <artifactId>maven-resolver-provider</artifactId>

      <type>jar</type>

      <version>3.5.2</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven.resolver</groupId>

      <artifactId>maven-resolver-impl</artifactId>

      <type>jar</type>

      <version>1.1.0</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven.resolver</groupId>

      <artifactId>maven-resolver-api</artifactId>

      <type>jar</type>

      <version>1.1.0</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven.resolver</groupId>

      <artifactId>maven-resolver-spi</artifactId>

      <type>jar</type>

      <version>1.1.0</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven.resolver</groupId>

      <artifactId>maven-resolver-util</artifactId>

      <type>jar</type>

      <version>1.1.0</version>

    </dependency>

    <dependency>

      <groupId>org.apache.maven.shared</groupId>

      <artifactId>maven-shared-utils</artifactId>

      <type>jar</type>

      <version>3.1.0</version>

    </dependency>

    <dependency>

      <groupId>commons-io</groupId>

      <artifactId>commons-io</artifactId>

      <type>jar</type>

      <version>2.4</version>

    </dependency>

    <dependency>

      <groupId>org.eclipse.sisu</groupId>

      <artifactId>org.eclipse.sisu.inject</artifactId>

      <type>jar</type>

      <version>0.3.3</version>

    </dependency>

    <dependency>

      <groupId>com.google.inject</groupId>

      <artifactId>guice</artifactId>

      <type>jar</type>

      <version>4.0</version>

    </dependency>

    <dependency>

      <groupId>aopalliance</groupId>

      <artifactId>aopalliance</artifactId>

      <type>jar</type>

      <version>1.0</version>

    </dependency>

    <dependency>

      <groupId>com.google.guava</groupId>

      <artifactId>guava</artifactId>

      <type>jar</type>

      <version>18.0</version>

    </dependency>

    <dependency>

      <groupId>javax.inject</groupId>

      <artifactId>javax.inject</artifactId>

      <type>jar</type>

      <version>1</version>

    </dependency>

    <dependency>

      <groupId>org.codehaus.plexus</groupId>

      <artifactId>plexus-component-annotations</artifactId>

      <type>jar</type>

      <version>1.7.1</version>

    </dependency>

    <dependency>

      <groupId>org.apache.commons</groupId>

      <artifactId>commons-lang3</artifactId>

      <type>jar</type>

      <version>3.5</version>

    </dependency>

    <dependency>

      <groupId>com.alibaba</groupId>

      <artifactId>fastjson</artifactId>

      <type>jar</type>

      <version>1.2.28</version>

    </dependency>

  </dependencies>

</plugin>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章