Maven-插件(Maven插件下载)

createh53个月前 (02-01)技术教程21

什么是Maven插件?

Maven实际上是一个插件执行框架,其中每个任务实际上都是由插件完成的。Maven插件通常用于-

  • 创建jar文件
  • 创建战争文件
  • 编译代码文件
  • 代码的单元测试
  • 创建项目文档
  • 创建项目报告

插件通常提供一组目标,可以使用以下语法执行这些目标-

mvn [plugin-name]:[goal-name]

例如,可以通过运行以下命令,使用maven-compiler-plugin的compile-goal编译Java项目。

mvn compiler:compile

插件类型

Maven提供了以下两种类型的插件-

序号类型与说明1个

构建插件

它们在构建过程中执行,应在pom.xml的<build />元素中进行配置。

2

报告插件

它们在网站生成过程中执行,应在pom.xml的<reporting />元素中进行配置。

以下是一些常见插件的列表-

Clear:构建后清理目标。删除目标目录。

compiler:编译Java源文件。

surefire:运行JUnit单元测试。创建测试报告。

jar:从当前项目构建一个JAR文件。

war:从当前项目构建一个WAR文件。

javadoc:为项目生成Javadoc。

antrun:从构建的任何阶段运行一组ant任务。

示例

在示例中,我们广泛使用了maven-antrun-plugin在控制台上打印数据。请参阅“构建配置文件”一章。让我们更好地了解它,并在C:\ MVN \ project文件夹中创建pom.xml。

<project xmlns = "http://maven.apache.org/POM/4.0.0"
   xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
   xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0
   http://maven.apache.org/xsd/maven-4.0.0.xsd">
   <modelVersion>4.0.0</modelVersion>
   <groupId>com.companyname.projectgroup</groupId>
   <artifactId>project</artifactId>
   <version>1.0</version>
   <build>
      <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-antrun-plugin</artifactId>
            <version>1.1</version>
            <executions>
               <execution>
                  <id>id.clean</id>
                  <phase>clean</phase>
                  <goals>
                     <goal>run</goal>
                  </goals>
                  <configuration>
                     <tasks>
                        <echo>clean phase</echo>
                     </tasks>
                  </configuration>
               </execution>     
            </executions>
         </plugin>
      </plugins>
   </build>
</project>

接下来,打开命令控制台并转到包含pom.xml的文件夹,然后执行以下mvn命令。

C:\MVN\project>mvn clean

Maven将开始处理并显示干净生命周期的干净阶段。

[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------
[INFO] Building Unnamed - com.companyname.projectgroup:project:jar:1.0
[INFO]    task-segment: [post-clean]
[INFO] ------------------------------------------------------------------
[INFO] [clean:clean {execution: default-clean}]
[INFO] [antrun:run {execution: id.clean}]
[INFO] Executing tasks
     [echo] clean phase
[INFO] Executed tasks
[INFO] ------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------
[INFO] Total time: < 1 second
[INFO] Finished at: Sat Jul 07 13:38:59 IST 2012
[INFO] Final Memory: 4M/44M
[INFO] ------------------------------------------------------------------

上面的示例说明了以下关键概念-

  • 使用plugins元素在pom.xml中指定了插件。
  • 每个插件可以有多个目标。
  • 您可以使用其phase元素从插件应该开始处理的位置定义阶段。我们已经使用了清洁阶段。
  • 您可以通过将任务绑定到插件目标来配置要执行的任务。我们已经将echo任务与maven-antrun-plugin的运行目标绑定了。
  • 如果本地存储库中没有该插件,Maven将下载该插件并开始处理。

相关文章

C/C++|头文件、源文件分开写的源起及作用

1 C/C++ 编译模式通常,在一个 C++ 程序中,只包含两类文件—— .cpp 文件和 .h 文件。其中,.cpp 文件被称作 C++ 源文件,里面放的都是 C++ 的源代码;而 .h 文件则被称...

为什么编译原理被称为龙书?(龙书 编译原理)

碎碎念为什么这本书叫做 龙书(Dragon book)?这本书很有意思,它的书名是 《Compilers: Principles, Techniques, and Tools》,也就是编译器的原则、技...

JAVA小白在CENTOS部署WEB JAR包(centos安装java环境)

在下虽然是文科生,但是对于计算机语言有兴趣,跟大家一起学习。1、安装JAVA环境。需要使用一个SSH工具,建议PUTTY。确保软件包最新:sudo yum update更换国内源备份REPO:sudo...

JAVA拾遗系列之JAVA基础-语法糖(java语言的语法)

一、概述Java语言发展至今,也在不断跟随时代的进步,增加了很多新特性。不过java中的语法糖只存在于编译期, 在编译器将 .java 源文件编译成 .class 字节码时, 会进行解语法糖操作, 还...

Android-JNI开发概论(android开发从入门到精通(项目案例版))

什么是JNI开发JNI的全称是Java Native Interface,顾名思义,这是一种解决Java和C/C++相互调用的编程方式。它其实只解决两个方面的问题,怎么找到和怎么访问。 弄清楚这两个话...

JAVA——软件工程师之路第三天(软件工程师java工资高吗)

HellowWorld入门程序一、程序开发步骤说明:Java程序开发三步骤:编写、编译(翻译)、运行。二、编写Java源程序我们在使用电脑的过程中会发现电脑中存在或可以创建各类不同后缀名的文件,如:....