Maven学习第一节

一、surfire:神义,一定会成功的!

             surefire 插件用来在maven构建生命周期的test phase执行一个应用的单元测试。它会产生两种不同形式的测试结果报告:

            1).纯文本
            2).xml文件格式的

                    默认情况下,这些文件生成在工程的${basedir}/target/surefire-reports,目录下(basedir指的是pom文件所在的目录)。 它可以运行任  何  testNG,Junit,pojo写的单元测试。

 二、怎么样创建一个Maven项目?

        ALT+F5可知报错的原因

    

                

              groupid和artifactId被统称为“坐标”是为了保证项目唯一性而提出的,
              如果你要把你项目弄到maven本地仓库去,你想要找到你的项目就必须根据这两个id去查找。
  groupId一般分为多个段,这里我只说两段,第一段为域,第二段为公司名称。域又分为org、com、cn等等许多,其中org为非营利组织,com为商业组织。举个apache公司的tomcat项目例子:这个项目的groupId是org.apache,它的域是org(因为tomcat是非营利项目),公司名称是apache,artigactId是tomcat。
        比如我创建一个项目,我一般会将groupId设置为cn.pq,cn表示域为中国,pq是我个人姓名缩写,artifactId设置为FirstTestSpring3,表示你这个项目的名称是FirstTestSpring3,依照这个设置,你的包结构最好是cn.pq.FirstTestSpring3j打头的,如果有个StudentPeng,它的全路径就是cn.pq.FirstTestSpring3.StudentPeng 

三.Maven的生命周期?

   

一个项目经历了编译、测试、打包、发布等生命周期的过程,称为项目构建。

在Maven中有三套独立的生命周期:

  • Clean Lifecycle:在进行真正的构建之前进行一些清理工作
  • Default Lifecycle:构建的核心部分,编译、测试、打包、部署
  • Site Lifecycle:生成项目报告、生成站点、发布站点

    第一个和第三个比较简单也比较好理解,看一下Maven的最重要的Default生命周期,绝大部分工作都发生在这个生命周期中,在这个阶段中,比较重要和常用的阶段有:

    • validate
    • generate-sources
    • process-sources
    • generate-resources
    • process-resources:复制并处理资源文件至目标目录,准备打包
    • compile:编译项目源代码
    • process-clases
    • generate-test-sources
    • procss-test-sources
    • generate-test-resources
    • process-test-resources:复制并处理资源文件至目标测试目录
    • test-compile:编译测试源代码
    • process-test-classes
    • test:使用合适的单元测试框架测试运行,这些测试代码将不会被打包或部署
    • prepare-package
    • package:接受编译好的代码,打包成可发布的格式,如jar
    • pre-integration-test
    • integration-test
    • post-integration-test
    • verify
    • install:将包安装至本地仓库,以便让其它项目依赖
    • deploy:将最终的包复制到远程仓库,以便让其它开发人员与项目共享

    基本上,只要根据名称我们就可以猜测出每个阶段的用途。要记住的是,任何一个阶段的时候,它前面的所有阶段都会被运行,这也就是为什么我们运行mvn clean install的时候,代码会被编译、测试、打包。

    此外,Maven的插件机制是完全依赖Maven生命周期的,因此理解生命周期至关重要。

猜你喜欢

转载自blog.csdn.net/qq_40406929/article/details/79992781