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

  • 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. 附目录结构:

复习(1)【Maven】的更多相关文章

  1. SpringBoot Junit Maven JaCoCo

    写一下最近写单体测试的一些笔记. SrpingBoot的测试用例: @RunWith(SpringJUnit4ClassRunner.class) @SpringBootTest(classes = ...

  2. 复习宝典之Maven项目管理

    查看更多宝典,请点击<金三银四,你的专属面试宝典> 第二章:Maven项目管理 Maven是基于项目对象模型(POM project object model),可以通过一小段描述信息(配 ...

  3. eclipse中 使用maven搭建ssh项目 思路复习(含有pom.xml)

    首先在web.xml中配置监听器 在服务器启动的时候 进行bean对象的创建(只会创建单例对象 dao service   多例对象action可不会创建  每个多例对象是不同的 创建了有什么意义呢 ...

  4. Maven搭建SpringMVC+Hibernate项目详解 【转】

    前言 今天复习一下SpringMVC+Hibernate的搭建,本来想着将Spring-Security权限控制框架也映入其中的,但是发现内容太多了,Spring-Security的就留在下一篇吧,这 ...

  5. 渣渣小本求职复习之路每天一博客系列——TCP/IP协议栈(5)

    前情回顾:一篇短短的博客明显不能满足TCP和UDP这两个饥渴的汉子,而且还被应用协议占了一小半的篇幅.在昨天结束之后,相信大家都基本对TCP/IP协议栈的轮廓有一个大概的印象了,能够对整体有所把握. ...

  6. Maven项目环境搭建实例.

    前言:最近下班比较早, 总是不愿意让自己闲着, 此时刚好从网上找到了一些项目的资源, 结合自己在公司做的项目, 所以拿来一起学习加复习一些平常用到和没接触过的新知识.做的这个项目的名称叫做babasp ...

  7. Maven搭建SpringMVC+Mybatis项目详解

    前言 最近比较闲,复习搭建一下项目,这次主要使用spring+SpringMVC+Mybatis.项目持久层使用Mybatis3,控制层使用SpringMVC4.1,使用Spring4.1管理控制器, ...

  8. Gradle实战:发布aar包到maven仓库

    查看原文:http://blog.csdn.net/u010818425/article/details/52441711 Gradle实战系列文章: <Gradle基本知识点与常用配置> ...

  9. Maven搭建SpringMVC+Hibernate项目详解

    前言 今天复习一下SpringMVC+Hibernate的搭建,本来想着将Spring-Security权限控制框架也映入其中的,但是发现内容太多了,Spring-Security的就留在下一篇吧,这 ...

随机推荐

  1. [原]CentOS7部署osm2pgsql

    转载请注明原作者(think8848)和出处(http://think8848.cnblogs.com) 部署Postgresql和部署PostGis请参考前两篇文章 本文主要参考GitHub上osm ...

  2. [LeetCode] Palindrome Permutation II 回文全排列之二

    Given a string s, return all the palindromic permutations (without duplicates) of it. Return an empt ...

  3. [LeetCode] Employees Earning More Than Their Managers 员工挣得比经理多

    The Employee table holds all employees including their managers. Every employee has an Id, and there ...

  4. VS2015下如何用编译、调试程序。

    VS2015下如何用编译.调试程序. (通过实践给出截图) 安装步骤: 下载安装网址[VS2015下载地址](http://www.ithome.com/html/win10/164028.htm) ...

  5. <img>标签链接地址失效如何自动显示默认图片

    <img src="errurl" onerror="this.src='default.jpg'">

  6. hihoCoder太阁最新面经算法竞赛15

    hihoCoder太阁最新面经算法竞赛15 Link: http://hihocoder.com/contest/hihointerview24 题目1 : Boarding Passes 时间限制: ...

  7. jetbrain系列IDE设置

    1.代码提示默认ctrl+space(这是全角半角切换),改为alt+/,这与cyclic expand word冲突,直接删掉它就可以了 2.ctrl+M,进入presentation mode,与 ...

  8. autofs自动挂载

    autofs是根据需要自动挂载,默认5分钟不使用自动卸载挂载点!nfs,smb,iso,sd*的挂载 环境:RHEL6.5/Centos6.5    172.24.0.25 01.安装autofs y ...

  9. vim

    visual mode : insert : ctrl + v select line shift + i key word Esc

  10. Jenkins创建Maven项目及SSH部署

    前面我们已经安装了Jenkins的环境,以及配置好了jdk和maven.下面我们来看如何通过Jenkins将svn的项目进行打包和部署. 创建MAVEN项目 1.点击新建,输入项目名,选择" ...