zoukankan      html  css  js  c++  java
  • maven生命周期和插件

    maven周期

     maven的生命周期不止package,compile,clean。其实这是主要部分。

    以下截图其实展示的是maven的所有周期。

    maven的生命周期,主要分为3套(其实每个生命周期下面都分为一些阶段,如上截图所示):

    1、clean周期:负责清理项目(清理上一次编译的文件)。

    2、default周期: 主体周期,负责完成项目构建主体过程。

    3、site周期:建立站点(生成站点文档,发送站点到服务器)。

    周期之间是独立的,周期内部的各个阶段是相互依赖的。

    例如我执行install,这个阶段是处于default周期内部的,所以这个时候,会从最早的阶段执行到install。post-clean以及前面的是属于clean周期的。

    所以

    例如mvn clean compile是可以的,但是mvn compile install就没必要了, compile和install是属于同一个周期内的。

    maven插件

    其实maven的周期是一个规范真正执行的是maven的插件。阶段执行的时候,其实执行的是maven的插件,每个插件又包含很多的goal,所以插件执行的时候就是执行每一个目标。

    添加maven的插件:

        <build>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-dependency-plugin</artifactId>
                    <version>3.1.1</version>
                </plugin>
            </plugins>
        </build>

     新下下来的插件:

    maven的resources目录

    右侧的插件其实有个resources插件。resources插件,负责将配置文件复制到编译目录中。

    两种配置文件main-resources、test-resources

    maven默认只关注resources目录下的配置文件,其他目录下的配置文件会被忽略。

    如果有配置文件不在resources目录下,这个时候就需要额外的配置:

    <build>
        <resources>
            <resource>
                <directory>
                    src/main/java
                </directory>
            </resource>
        </resources>
    </build>

    如果需要排除一些文件:

    <resources>
        <resource>
            <directory>
                src/main/java
            </directory>
            <!--排除所有的txt文件,其他的文件都会被复制-->
            <excludes>
                <exclude>**/*.txt</exclude>
            </excludes>
        </resource>
    </resources>

    如果只包含一些文件:

    <resources>
        <resource>
            <directory>
                src/main/java
            </directory>
            <!--除了txt文件,其他的文件都不会被复制-->
            <includes>
                <include>**/*.txt</include>
            </includes>
        </resource>
    </resources>
  • 相关阅读:
    cocos2dx android java调用C++
    cocos2dx android c++调用java
    cocos2dx android collection
    cocos2dx学习之windows android环境搭建
    windows phone 8.0 与 windows phone7.1区别
    C#文件同步工具教程
    Web2.0时代,RSS你会用了吗?(技术实现总结)
    介绍一篇关于session的好文章,写的很详细(jspservlet 技术)
    利用HttpModuler实现WEB程序同一时间只让一个用户实例登陆
    css
  • 原文地址:https://www.cnblogs.com/chenmz1995/p/12809279.html
Copyright © 2011-2022 走看看