Maven基础
  maven核心内容:依赖管理、
  Maven是Apache组织的开源项目,是项目构建工具。用来管理jar包之间的相互依赖关系
  Maven是一个项目构建和管理的工具,提供了帮助管理,构建,文档,报告,依赖,发布,分发的方法、可以方便的编译代码,进行依赖管理、管理二进制库等

1. maven的好处
  maven的好处在于可以将项目过程规范化,自动化,高效化以及强大的可扩展性
  利用maven自身以及其插件还可以获得代码检查报告,单元测试覆盖率,实现持续集成等等
  坐标:作为jar包,如何给出坐标
  举例:struts2-core-2.3.24.jar
  Apache(公司)+struts2(项目名称)+2.3.24(版本信息)
  maven项目中需要某一个jar包,只需要在maven项目中配置需要的jar包坐标信息。maven程序根据jar包坐标信息去jar包仓库中查找jar包

2. maven的好处如何实现
  maven的两大核心:
  ** 依赖管理:对jar包管理过程
  ** 项目构建:项目在编码完成后,对项目进行编译,打包,测试,部署等一系列操作通过命令来实现

  使用maven命令将web项目发布到tomcat
  进入一个maven的web项目,执行命令mvn tomat:run

3. maven安装、配置本地仓库
  maven程序安装前提:maven程序是java开发,需要安装jdk程序
  mvn -v:查看maven版本信息

  1) maven的下载安装
    <1>下载maven:
      下载后解压(解压目录路径最好不要有中文)
    <2>解压后目录:
      bin:可执行的脚本
      lib:运行需要的依赖包
      conf:配置文件
      boot:
    <3>配置maven的环境变量
      MAVEN_HOME:xxxxxxxxx
      PATH:xxxxxxxx\bin;
      JDK环境变量必须配置
          JAVA_HOME:maven项目会搜索改环境变量,否则无法运行

  2) 配置本地仓库
    仓库类型:本地仓库-->私服-->中央仓库

    进入maven程序解压后的目录中
    配置conf中的setting.xml文件
      <localRepository>jar包的路径</localRepository>

4. maven项目标准目录结构
  src:项目源码目录
  main/java:项目源代码
  main/resources:项目配置文件
  main/webapp:js、css、jsp、web.xml等文件
  test/:测试目录

  target:
  pom.xml:project object model maven项目核心配置文件

5. maven的常用命令
  1. clean:清理
    mvn clean
    就是删除maven项目下的target目录,编译的class文件等

  2. compile:编译
    mvn compile
    将项目中的.java文件编译为.class文件

  3. test:单元测试
    mvn test
    将项目根目录下src/test/java目录下的单元测试类都会执行
    对单元测试类的类名有要求:必须以Test.java结尾

  4. package:打包
    mvn package
    web project --war包
    java project --jar包
    将项目打包,打包项目到根目录下target目录
  5. install:安装
    本地多个项目公用一个jar包
    打包到本地仓库

  6. maven项目的生命周期
    在maven中存在三套声明周期,每一套声明周期都是相互独立的,互不影响。在一套声明周期中,执行后面的命令,前面的操作都会自动执行

    CleanLifeCycle:清理的生命周期(clean)
    defaultLifeCycle:默认声明周期(compile、test、package、install、deploy)
    siteLifeCycle:站点声明周期(site)
6. maven整合web项目案例
  1. eclipse配置maven
              

  构建索引:
                

右击从新构建索引

2. 创建maven项目
              

     maven project:创建maven项目或者父项目
  maven module:创建maven子模块(子项目)
  group id:公司名称 com.major
  artifact id:项目名称 crm
  Version:版本
  Packaging:jar/pom/war 打包(pom父工程选择pom)
  Name:
  Description:

  pom.xml添加信息
    <!-- 添加jdk版本信息-->
  

1.    <build>
2. <plugins>
3. <plugin>
4. <groupId>org.apache.maven.plugins</groupId>
5. <artifactId>maven-compiler-plugin</artifactId>
6. <configuration>
7. <source>1.7</source>
8. <target>1.7</target>
9. </configuration>
10. </plugin>
11. </plugins>
12. </build>

3. 查找依赖(直接查找本地仓库的包)
                

4. 依赖范围
添加依赖范围:默认是compile

单独执行mvn tomcat:run运行

debug run as 需要关联源码
5. maven整合struts2
添加插件(pom.xml右击maven-->添加插件)

添加struts2的依赖

Maven基础的更多相关文章

  1. maven基础知识

    1.maven基础知识 1.1maven坐标 maven坐标通常用冒号作为分割符来书写,像这样的格式:groupId:artifactId:packaging:version.项目包含了junit3. ...

  2. maven 基础

    maven安装链接 maven基础命令: 编译命令:mvn compile 测试命令:mvn test 清空命令:mvn clean 打包命令:mvn package 打包命令:mvn install ...

  3. Maven基础知识详解

    1. 简介   Maven在Java领域的应用已经非常广泛了,有了Maven的存在是的开发人员在搭建.依赖.扩展和打包项目上变得非常简单. 2. Windows安装Maven 下载安装包   http ...

  4. maven基础学习-为什么要用maven,帮助解决了什么问题,怎么解决的,希望以后学习每个知识点都可以这样问下自己

    maven基础学习 第1章 Maven介绍 1.1 什么是Maven 1.1.1 什么是Maven Maven 的正确发音是[ˈmevən],而不是"马瘟"以及其他什么瘟.Mave ...

  5. Maven——基础篇

    Maven--基础篇 Maven出现前的问题 一个项目就是一个工程,而工程内一般是通过package包来分模块,比较用户模块,订单模块等,如果项目过于庞大,通过包模块来划分就不太合适,而应该拆分为模块 ...

  6. Maven 基础标签之版本管理和冲突解决

    前言 我们在做java项目的时候由于jar包太多,我们就需要使用maven做项目管理,管理项目的jar包依赖,包括打包上线 maven基础 Maven 是一个项目管理工具,主要用于项目构建,依赖管理, ...

  7. Maven基础学习笔记

    Maven基础学习笔记 下载链接 官网:https://maven.apache.org/ 所有版本:https://archive.apache.org/dist/maven/maven-3/ 阿里 ...

  8. Maven基础知识和环境搭建

    基本概念和生命周期 Maven是现在流行的构建自动化工具,提供了软件构建过程中全生命周期的管理. 基础目录结构 基础目录结构如下: 根目录:存放pom.xml 和所有的子目录 ${basedir}/s ...

  9. Maven基础学习(一)—Maven入门

    一.概述      Maven是一个项目管理工具,它包含了一个项目对象模型(Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管 ...

随机推荐

  1. “织梦”CMS注入高危漏洞情况

    "织梦"CMS注入高危漏洞情况 作者:    时间:2014-04-17   "织梦"CMS是由上海卓卓网络科技有限公司研发的一款网站建站系统软件,又称&quo ...

  2. 学习Spark——那些让你精疲力尽的坑

    这一个月我都干了些什么-- 工作上,还是一如既往的写bug并不亦乐乎的修bug.学习上,最近看了一些非专业书籍,时常在公众号(JackieZheng)上写点小感悟,我刚稍稍瞄了下,最近五篇居然都跟技术 ...

  3. (原创) Maven查看JAR包的依赖关系

    如果是用命令行,可进入项目所在目录,然后输入: mvn dependency:tree ,来查看jar包依赖关系. 另外还可以在eclipse操作,如下图所示: 点击run后,开始输出JAR包依赖树. ...

  4. 网络编程3之TCP/IP协议

    在TCP/IP协议中,最重要的协议是[TCP.UDP.IP]协议 1.TCP/IP协议特点 1)Internet上不同系统之间互联的一组协议 2)为分散和不同类型的硬件提供通用的编程接口. 3)TCP ...

  5. wpf XAML xaml 进行 数据绑定,Resource DataContext ElementName

    先做个声明:这里绑定都在前台实现,至于后台怎么写,那比前台简单多了,但更常用的是xaml中绑定.我们分析下最简单的字符串绑定来弄清楚原理,其他的类推就是. 数据绑定主要是要弄清楚两个东西,一个是源So ...

  6. javascript代码的小小重构

    写js也有那么段时间了,也看过几本关于js的书,从最初的<锋利的jquery><高性能javasrcipt>到<javascript设计模式>等,虽然看了些书,看到 ...

  7. JavaScript设计模式_01_单例模式

    最近项目不太忙,难得有时间看看书,平时挺喜欢js这门语言.也看过很多高级教程,觉得自己还是比较热衷于js的设计模式.这一次重温一下<JavaScript设计模式与开发实践>,开篇为单例模式 ...

  8. JS数组+JS循环题

    先看JS循环作业题: 一.一张纸的厚度是0.0001米,将纸对折,对折多少次厚度超过珠峰高度8848米 <script type="text/javascript"> ...

  9. V9发布内容时保留框架<iframe></iframe>

    有些时候,发布文章内容的时候需要用到<iframe></iframe>框架站外内容最近在发布内容时就遇到这个问题,<iframe></iframe>给转 ...

  10. ByteBuffer源码分析

    在进行数据传输的时候,往往需要使用到缓冲区,常用的缓冲区就是JDK NIO类库中提供的java.nio.Buffer,实现类如下: 在使用NIO编程时,最常用的是其中的ByteBuffer,本篇分析B ...