zoukankan      html  css  js  c++  java
  • 复习(1)【Maven】

    终于开始复习旧知识了,有输入必然要有输出。输入和输出之间的内化过程尤为重要,在复习的同时,真正把学到的东西积淀下来,加深理解。

    • Maven项目概念与配置
    1. Maven是一个项目管理和综合工具。Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。项目构建过程:清理、编译、测试、打包、集成测试、验证、部署。
    2. java世界中主要有三大构建工具:Ant、Maven和Gradle。经过几年的发展,Ant几乎销声匿迹、Maven也日薄西山,而Gradle的发展则如日中天。开发Android应用的话,还是推荐使用Gradle做构建工具,因为Google官方推的Android Studio就使用了Gradle作为原生构建工具,这使得Gradle对Android各版本软件的构建支持得更好一些。Gradle最大的两个特点。其一是简洁,基于Groovy的紧凑脚本实在让人爱不释手,在表述意图方面也没有什么不清晰的地方。其二是灵活,各种在Maven中难以下手的事情,在Gradle就是小菜一碟,比如修改现有的构建生命周期,几行配置就完成了,同样的事情,在Maven中你必须编写一个插件,目前java程序员对XML熟悉,使用gradle需要学习groovy,理解其约定优于配置的概念。
    3. 所有的源代码放在文件夹/src/main/java/,所有的单元测试代码放入/src/test/java/,页面资源配置代码可以放在/src/main/resources/。自己建的话需要build path 把文件夹提上来。target是有存放项目构建后的文件和目录,jar包、war包以及编译的class文件等。target里的所有内容都是maven构建的时候生成的。
    4. POM:项目抽象模型

      这是maven非常核心的概念。Maven通过它来管理项目。每一个项目都有一个pom.xml文件,该文件定义了项目的基本信息,依赖关系等,maven对项目的生命周期管理也是基于此文件。

      groupId: 团体,公司,小组,组织,项目,或者其它团体。

      artifactId:在 groupId 下的表示一个单独项目的唯一标识符。项目名称ID 。

      packaging: 标识项目的类型,如jar,war等。

      version:版本号。以上4个是 Maven 的 坐 标,它们唯一标识了一个项目,相关依赖(dependency)的配置尤为重要。

    5.  Repository

      仓库,二方库,三方库的概念。每当安装完成maven之后就会有一个默认的本地仓库和远程仓库。当进行编译的时候,maven会先查找本地Repository,如果本地Repository没有,会去取远程repository。很多公司都用Nexus搭建了私服库,便于全公司使用和下载。

    6. Maven常用命令: 
      1. 创建Maven的普通java项目: 
         mvn archetype:create 
         -DgroupId=packageName 
         -DartifactId=projectName  
      2. 创建Maven的Web项目:   
          mvn archetype:create 
          -DgroupId=packageName    
          -DartifactId=webappName 
          -DarchetypeArtifactId=maven-archetype-webapp    
      3. 编译源代码: mvn compile 
      4. 编译测试代码:mvn test-compile    
      5. 运行测试:mvn test   
      6. 产生site:mvn site   
      7. 打包:mvn package   
      8. 在本地Repository中安装jar:mvn install 
      9. 清除产生的项目:mvn clean   
      10. 生成eclipse项目:mvn eclipse:eclipse  
      11. 生成idea项目:mvn idea:idea  
      12. 组合使用goal命令,如只打包不测试:mvn -Dtest package   
      13. 编译测试的内容:mvn test-compile  
      14. 只打jar包: mvn jar:jar  
      15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile 
            ( -skipping 的灵活运用,当然也可以用于其他组合命令)  
      16. 清除eclipse的一些系统设置:mvn eclipse:clean  
    7. 附目录结构:
  • 相关阅读:
    Mysql InnoDB引擎下 事务的隔离级别
    Spring 两大核心 IOC 和 AOP
    java 冒泡排序
    MyBatis 传入List集合作为条件查询数据
    fastfusion运行
    数据集
    工具学习
    三维重建
    Scrivener破解
    博客园设置
  • 原文地址:https://www.cnblogs.com/cosyer/p/6258175.html
Copyright © 2011-2022 走看看