Maven插件绑定到生命周期 刺骨的言语ヽ痛彻心扉 2021-10-01 05:56 242阅读 0赞 **一 点睛** 默认生命周期的各个阶段,以及绑定到各阶段的插件及目标。 ![20190818171302214.png][] **二 实战** 1 构造一个Maven项目mavenQs 构建完后,目录结构如下: F:\JavaEE\mavenQs>tree pom.xml └─src ├─main │ └─java │ └─org │ └─fkjava │ └─mavenqs └─test └─java └─org └─fkjava └─mavenqs 2 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/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>org.fkjava</groupId> <artifactId>mavenQs</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>mavenQs</name> <url>http://maven.apache.org</url> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <!-- 下面3个元素定义了exec插件的坐标 --> <groupId>org.codehaus.mojo</groupId> <artifactId>exec-maven-plugin</artifactId> <version>1.3.1</version> <executions> <execution> <!-- 指定绑定到compile阶段 --> <phase>compile</phase> <!-- ① --> <!-- 指定运行exec插件的java目标 --> <goals> <goal>java</goal> <!-- ② --> </goals> <!--- configuration元素用于为插件的目标配置参数 --> <configuration> <!-- 下面元素配置mainClass参数的值为:org.fkjava.mavenqs.App --> <mainClass>org.fkjava.mavenqs.App</mainClass> </configuration> </execution> </executions> </plugin> </plugins> </build> </project> 3 执行mvn compile F:\JavaEE\mavenQs>mvn compile [INFO] Scanning for projects... [INFO] [INFO] -------------------------< org.fkjava:mavenQs >------------------------- [INFO] Building mavenQs 1.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ mavenQs --- [WARNING] Using platform encoding (GBK actually) to copy filtered resources, i.e. build is platform dependent! [INFO] skip non existing resourceDirectory F:\JavaEE\mavenQs\src\main\resources [INFO] [INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ mavenQs --- [INFO] Nothing to compile - all classes are up to date [INFO] [INFO] --- exec-maven-plugin:1.3.1:java (default) @ mavenQs --- [WARNING] Warning: killAfter is now deprecated. Do you need it ? Please comment on MEXEC-6. Hello World! [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 2.037 s [INFO] Finished at: 2019-08-18T16:54:35+08:00 [INFO] ------------------------------------------------------------------------ 4 说明 执行上面命令不仅可以看到Maven执行compile插件的compile目标来编译项目,还可以看到Maven执行exec插件的java目标绑定到compile阶段。 [20190818171302214.png]: /images/20210724/d29781c376834f299aaf630fbb18e6bf.png
还没有评论,来说两句吧...