• maven学习(三)


    Maven 工程的认识 

    Maven 工程的目录结构

    作为一个 maven 工程,它的 src目录和 pom.xml 是必备的。 进入 src目录后,我们发现它里面的目录结构如下: 

      * src/main/java —— 存放项目的.java 文件

      * src/main/resources —— 存放项目资源文件,如 spring, hibernate 配置文件

      * src/test/java —— 存放所有单元测试.java 文件,如 JUnit 测试类

      * src/test/resources —— 测试资源文件

      * target —— 项目输出位置,编译后的class 文件会输出到此目录

      * pom.xml——maven 项目核心配置文件

     注意:如果是普通的 java 项目,那么就没有webapp 目录。 

    Maven 工程的运行

    进入 maven 工程目录(当前目录有 pom.xml 文件),运行 tomcat7:run 命令。

    根据上边的提示信息,通过浏览器访问:http://localhost:8080/maven

    Maven 常用命令 

    我们可以在cmd 中通过一系列的 maven 命令来对我们的 maven-helloworld 工程进行编译、测试、运 行、打包、安装、部署。 

    compile 

    compile 是 maven 工程的编译命令,作用是将 src/main/java 下的文件编译为 class 文件输出到 target 目录下。

    cmd 进入命令状态,执行mvn compile,如下图提示成功:

     ———编译后——> 

    test 

    test 是 maven 工程的测试命令  mvn test,会执行src/test/java下的单元测试类。

    package

    package 是 maven 工程的打包命令,对于 java 工程执行 package 打成 jar 包,对于web 工程打成war 包。 

    clean 

    clean 是 maven 工程的清理命令,执行 clean 会删除 target 目录及内容。 

    install 

    install 是 maven 工程的安装命令,执行 install 将 maven 打成 jar 包或 war 包发布到本地仓库。 从运行结果中,可以看出: 当后面的命令执行时,前面的操作过程也都会自动执行。如:install执行时,前面的操作(compile、test、package)都会自动执行一边。

    Maven 指令的生命周期 

     maven 对项目构建过程分为三套相互独立的生命周期,请注意这里说的是“三套”,而且“相互独立”, 这三套生命周期分别是: 


    Clean Lifecycle 在进行真正的构建之前进行一些清理工作。

    Default Lifecycle 构建的核心部分,编译,测试,打包,部署等等。

    Site Lifecycle 生成项目报告,站点,发布站点。

    maven 的概念模型 

    Maven 包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段 (phase)中插件(plugin)目标(goal)的逻辑。 

     * 项目对象模型 (Project Object Model) 一个 maven 工程都有一个 pom.xml 文件,通过 pom.xml 文件定义项目的坐标、项目依赖、项目信息、 插件目标等。 

    * 依赖管理系统(Dependency Management System) 通过 maven 的依赖管理对项目所依赖的 jar 包进行统一管理。 比如:项目依赖 junit4.9,通过在 pom.xml 中定义 junit4.9 的依赖即使用 junit4.9,如下所示是 junit4.9 的依赖定义:

     <!-- 依赖关系 --> 
    <dependencies> 
    <!-- 此项目运行使用 junit,所以此项目依赖 junit --> 
        <dependency> 
              <!-- junit 的项目名称 -->    
              <groupId>junit</groupId>    
              <!-- junit 的模块名称 -->    
              <artifactId>junit</artifactId>    
              <!-- junit 版本 -->    
              <version>4.9</version>    
              <!-- 依赖范围:单元测试时使用 junit -->    
              <scope>test</scope>   
        </dependency> 
        。。。。。。。
    </dependencies>          

    * 一个项目生命周期(Project Lifecycle) 使用 maven 完成项目的构建,项目构建包括:清理、编译、测试、部署等过程,maven 将这些 过程规范为一个生命周期,如下所示是生命周期的各各阶段:

     maven 通过执行一些简单命令即可实现上边生命周期的各个过程,比如执行 mvn compile 执行编译、 执行 mvn clean 执行清理。 

    * 一组标准集合  maven将整个项目管理过程定义一组标准,比如:通过 maven 构建工程有标准的目录结构,有标准的生命周期阶段、依赖管理有标准的坐标定义等。 

    * 插件(plugin)目标(goal) maven 管理项目生命周期过程都是基于插件完成的。 

  • 相关阅读:
    简述密码
    w命令
    Python打包-Pyinstaller
    [转]油猴Tampermonkey-让百度云下载飞起来
    百度云高速下载Pandownload
    AdoConnect-获取连接字符串 (工具)
    Python爬虫-豆瓣电影 Top 250
    C++中使用ODBC API访问数据库例程
    Python爬虫-什么是爬虫?
    Python+Django(Python Web项目初体验)
  • 原文地址:https://www.cnblogs.com/churujianghudezai/p/11967613.html
Copyright © 2020-2023  润新知