一、Maven插件
Maven的核心仅仅定义了抽象的生命周期,具体的任务都是交由插件完成的,每个插件都能实现多个功
能,每个功能就是一个插件目标。Maven的生命周期与插件目标相互绑定,以完成某个具体的构建任
务。例如:compile就是插件maven-compiler-plugin的一个插件目标。
1、jdk编译插件
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchemainstance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/maven4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.luban.maven</groupId>
<artifactId>Hello</artifactId>
<version>0.0.1-SNAPSHOT</version>

其中的build标签描述了如何来编译及打包项目,而具体的编译和打包工作是通过build中配置的 plugin 来完成。当然plugin配置不是必须的
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>

//configuration,该插件所需要的特殊配置
<configuration>
<source>1.8</source>
<target>1.8</target>
<encoding>UTF-8</encoding>
</configuration>

</plugin>
</plugins>
</build>

2、Tomcat插件 ,即不用本地的tomcat,而是在项目中集成tomcat
<!--Tomcat插件 -->
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.1</version>
<configuration>
<port>8081</port>
<server>tomcat7</server>
</configuration>
</plugin>
</project>

3.源码打包插件 这样在打包的时候,就能生成源代码

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.2.1</version>
<executions>
<execution>
<goals>
<goal>jar-no-fork</goal>
</goals>
<phase>verify</phase>
</execution>
</executions>
</plugin>

二、继承与聚合
继承是为了消除重复,可以把pom中很多相同的配置提取出来,如:groupId,version等。在使用的时候,子工程直接继承
父工程的依赖版本号,子工程中不再需要指定具体版本号,方便统一管控项目的依赖版本问题。

    其中<properties></properties>中设置统一版本

          <dependencyManagement></dependencyManagement>  父工程管理的依赖

maven插件和继承与聚合
父工程的设置
父工程的pom.xml中打包的方式必须设置为pom方式。


1、父工厂的作用
2、聚合工程的作用
如果想一次构建多个项目模块,那则需要对多个项目模块进行聚合
<modules>
 <module>子项目名称1</module>
 <module>子项目名称2</module>
 <module>子项目名称3</module>
</modules>
3、继承与聚合
聚合主要是为了快速构建项目;继承主要是为了消除重复。

 

 

相关文章: