zoukankan      html  css  js  c++  java
  • Maven build lifecycle

    Clean Lifecycle

    运行mvn clean执行clean生命周期,包含三个生命周期阶段:

    • pre-clean
    • clean
    • post-clean

    clean:clean会删除一次构建后的输出,默认删除_${basedir}/target/_目录(如果你没有自定义输出目录)。

    执行clean阶段的时候,maven可以执行任何绑定到pre-clean阶段的_goal_(目标)。

    例如:你想在pre-clean阶段时触发antrun:run_goal_来输出一个通知,或者想在构陷目录删除时,打包一下。

    **Triggering a Goal on pre-clean. **

    <project>
        ...
        <build>
            <plugins>... <plugin>
                    <artifactId>maven-antrun-plugin</artifactId>
                    <executions>
                        <execution>
                            <id>file-exists</id>
                            <phase>pre-clean</phase>
                            <goals>
                                <goal>run</goal>
                            </goals>
                            <configuration>
                                <tasks>
                                 <echo>hello world</echo>                                 
                                </tasks>
                            </configuration>
                        </execution>
                    </executions>
                    </plugin>
            </plugins>
        </build>
    </project>
    

    我们还可以自定义clean插件的删除目录(即除了默认的目录,再删除别的目录)。可以配置fileSet配置项,该配置支持ant的通配符。

    **Customizing Behavior of the Clean Plugin. **

     <build>
            <plugins>
                <plugin>
                    <artifactId>maven-clean-plugin</artifactId>
                    <configuration>
                        <filesets>
                            <fileset>
                                <directory>target-other</directory>
                                <includes>
                                    <include>*.class</include>
                                </includes>
                            </fileset>
                        </filesets>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    

    Default Lifecycle

    maven的默认生命周期,有如下阶段:

    Lifecycle Phase Description
    validate 验证项目的正确性和完成该构建的必要信息
    generate-sources 生成包含在编译之中的源代码
    process-sources 处理源码,如过滤某些值
    generate-resources 生成资源文件,这些文件会包含到打包中
    process-resources 将资源文件复制到目标目录,并处理,准备打包
    compile 编译源码
    process-classes 对生成的类文件后处理,如字节码增强
    generate-test-sources 生成测试代码
    process-test-sources 处理测试代码
    generate-test-resources 生成测试用的资源文件
    process-test-resources 复制资源文件到测试目录
    test-compile 编译测试代码
    test 测试
    prepare-package 打包前的准备工作
    package 打包,如JAR,WAR等
    pre-integration-test 集成测试准备
    integration-test 集成测试
    post-integration-test 集成测试后的工作
    verify 检查验证生成的java包
    install 安装到本地仓库
    deploy 部署到目标地址

    Site Lifecycle

    暂时用不到,不整理

  • 相关阅读:
    mysql时区设置
    jquery raidio buttion checked unchecked
    mysql定时备份
    丁香园 (http://www.dxy.cn)这个名字听着
    mysql backup solution
    mysql备份
    mysql编码设置
    在Ubuntu中通过源码安装编译安装软件(MySQL篇) 收藏
    社会化分享实现插件,分享到...
    ubuntu 小工具
  • 原文地址:https://www.cnblogs.com/xiaojintao/p/5998722.html
Copyright © 2011-2022 走看看