Maven项目管理工具

白面郎君

Svn eclipse maven量级

1 Maven的简介

1.1 什么是maven

是apache下的一个开源项目,是纯java开发,并且只是用来管理java项目的

1.2 Maven好处

普通的传统项目

Maven项目

分析:maven项目为什么这么小?没有jar。 需要jar吗?肯定需要。没有存在于maven项目里面,jar存在于哪?

1.3 依赖管理

1.4 项目一键构建

编码 编译 测试(junit) 运行 打包 部署

一个 tomcat:run就能把项目运行起来

Maven能干的事:

编译 测试(junit) 运行 打包 部署

1.5 小结:

Maven的好处:

1.5.1 依赖管理

就是对jar包的统一管理 可以节省空间

1.5.2 一键构建
1.5.3 可以跨平台
1.5.4 应用于大型项目 可以提高开发效率

分析:

用户管理 订单管理 支付管理 。。。。。

Maven的分模块开发

互联网项目 按业务分

传统项目 按层分 entity dao service web

2 Maven的安装配置

2.1 下载安装

直接解压到一个没有中文没有空格的文件夹里解压后的目录如下:

Maven软件的核心文件:

2.2 Maven环境变量配置

1、 要配置jdk, maven3.3.9这个版本所需的jdk版本必须要1.7以上

2、 最终要运行的是maven软件中bin目录的mvn命令

所以要配置maven的环境变量

在系统变量添加

环境变量的名称:MAVEN_HOME

变量值:就是maven软甲解压的目录F:\class32\apache-maven-3.3.9

3、把MAVEN_HOME添加到path里

4、验证maven是否配置成功:

打开dos窗口 输入: mvn –v

2.3 Maven仓库

三种仓库

1、本地仓库 自己维护

本地仓库的配置只需要修改settings.xml文件就可以

2、远程仓库(私服) 公司维护

3、中央仓库 maven团队维护 两个亿

三种仓库的关系如下:

3 演示入门程序

3.1 Maven的目录结构

3.2 Maven的常用命令

Clean 清理编译的文件

Compile 编译了主目录的文件

Test 编译并运行了test目录的代码

Package 打包

Install 就是把项目发布到本地仓库

Tomcat:run 一键启动

3.3 Maven的生命周期(了解)

Compile test package install deploy(发布到私服)

三种生命周期

Clean生命周期

Clean

Default生命周期

Compile test package install deploy

Site生命周期

Site

3.4 命令和生命周期的阶段的关系

不同的生命周期的命令可以同时执行

Mvn clean package

4 项目构建

M2e插件的安装

Maven在eclipse的配置

1、选择3.3.9版本的maven软件

2、修改默认的本地仓库地址

项目构建

1、 新建maven项目

2、调过骨架,如果不跳过骨架选择创建出的项目目录是不全的

2、 填写坐标

3、创建工程

4、处理红色叉号

手动在webapp文件夹下创建一个WEB-INF文件夹,在里面放一个web.xml文件

5、处理编译版本

在pom.xml中添加如下代码

<build>
<!-- 配置了很多插件 -->
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<encoding>UTF-8</encoding>
</configuration>
</plugin>
</plugins>
</build>

5、创建一个servlet

修改web.xml

删除重复的代码

添加jar包

在pom中添加如下代码:

<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.9</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
<version>2.5</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jsp-api</artifactId>
<version>2.0</version>
<scope>provided</scope>
</dependency> </dependencies>

会发现jar包已添加到项目中

启动项目

右击项目---run as –maven build ….

5 依赖管理

Jar包的管理

需求:整合struts2 页面上传一个客户id 跳转页面

5.1 添加依赖:

打开maven仓库的视图:

5.2 重建索引

1、 创建maven项目(同上)

2、 跳过骨架(同上)

3、 填写坐标信息(同上)

4、 添加web.xml文件(同上)

5、 修改编译版本(同上)

6、 添加坐标 选择Dependencies标签 点击add

7、 手动输入要添加的坐标,选择版本

8、 可以看到 pom.xml文件中多出了如下代码

9、 同样的方式添加servlet-api.jar和jsp-api.jar 注意选择scope为provided

10、 写action代码

import com.opensymphony.xwork2.ActionSupport;
public class CutomerAction extends ActionSupport {
private Long custId;
public Long getCustId() {
return custId;
}
public void setCustId(Long custId) {
this.custId = custId;
}
public String findById(){ return SUCCESS;
} }

11、 添加struts.xml文件放到resources目录中

内容:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
"http://struts.apache.org/dtds/struts-2.3.dtd"> <struts>
<!-- 配置常量 -->
<!-- 字符集 -->
<constant name="struts.i18n.encoding" value="UTF-8"></constant>
<!-- 开发模式 -->
<constant name="struts.devMode" value="true"></constant> <!-- 通用package -->
<package name="customer" namespace="/" extends="struts-default"> <action name="find" class="cn.itcast.action.CutomerAction"
method="findById">
<result name="success">/jsp/info.jsp</result>
</action> </package>
</struts>

12、 添加jsp页面

15、修改web.xml文件 添加过滤器

<filter>
<filter-name>struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>

5.3 依赖范围

5.3.1 Compile struts2-core

编译(compile)时需要 测试时需要,,运行时需要,打包时需要

5.3.2 Provided jsp-api.jar servlet-api.jar

编译(compile)时需要,测试(test)时也需要 ,运行时不需要,打包时不需要

5.3.3 Runtime 数据库驱动包

编译时不需要,测试时需要,,运行时需要,打包时需要

5.3.4 Test junit.jar

编译时不需要,测试时需要,运行时不需要,打包也不需要

添加插件

Maven add plugin

如果用tomcat7运行用命令:

Tomcat7:run

Maven项目管理工具的更多相关文章

  1. Eclipse下安装及配置maven项目管理工具

    ①eclipse下maven插件安装. 本地maven安装.环境变量配置完成后,打开eclipse,点击eclipse菜单栏Help->Eclipse Marketplace搜索关键字maven ...

  2. maven(项目管理工具系列 maven 总结二)

    ♣maven是什么? ♣maven下载.安装 ♣了解maven仓库 ♣eclipse配置maven ♣创建maven项目 ♣把maven项目转化为web项目 1.maven是什么? Maven是一个项 ...

  3. Maven 项目管理工具基础入门系列(二)

    一.前言 在 Maven 项目管理工具基础知识系列(一) 这篇文章中,我们已经初步了解了 Maven,也知道了使用 Maven 作为项目管理工具的好处,特别是已经知道如何快速通过 Maven 构建 W ...

  4. Maven 项目管理工具基础知识系列(一)

    一.Maven 简介 Maven 中文意为 " 内行.专家 ",是 Apache 下的一个开源项目,属于纯 Java 开发,并且只是用来管理 Java项目的,它是一款项目管理工具, ...

  5. Maven项目管理工具初体验

    在最前面声明,本文不涉及任何原理,只是对使用方法和期间遇到的问题如何解决.主要是随着年纪原来越大,越觉得好记星不如烂笔头的深意,同时如果能够帮助谁,那就最好不过了. 前两天自己做一个项目,然后好心朋友 ...

  6. Maven项目管理工具--简单实用与入门

    Maven管理的方式就是"自动下载项目所需要的jar包,统一管理jar包之间的依赖关系" Maven下载与安装 1.首先确保JDK已安装,且JDK为1.6+(尽量新,新肯定支持,旧 ...

  7. Maven java项目管理工具

    Maven java项目管理工具 1.安装maven 下载最新的maven 下载地址 http://maven.apache.org/download.cgi 传到要安装的目录 例如/opt/下 # ...

  8. 向西项目管理工具Maven一片

    前言 相信仅仅要做过 Java 开发的童鞋们,对 Ant 想必都不陌生,我们往往使用 Ant 来构建项目,尤其是涉及到特别繁杂的工作量.一个 build.xml 可以完毕编译.測试.打包.部署等非常多 ...

  9. ③---Java项目管理工具MAVEN安装与配置

    Java项目管理工具MAVEN安装配置以下将为大家介绍Java项目管理工具MAVEN安装及其配置. 一.下载MAVEN安装文件 maven下载地址:https://maven.apache.org/d ...

随机推荐

  1. C#之概述

    当前流行的开发语言概述 C#是微软公司为Visual Studio开发平台推出的一种简洁.类型安全的面向对象的编程语言,开发人员可以通过她编写在.NET Framework上运行的各种安全可靠的应用程 ...

  2. Leetcode_128_Longest Consecutive Sequence

    本文是在学习中的总结,欢迎转载但请注明出处:http://blog.csdn.net/pistolove/article/details/43854597 Given an unsorted arra ...

  3. Unix - 文件中构成一个空洞的分析

    lseek函数显示地为一个打开文件设置偏移量,文件偏移量可以大于文件的当前长度,在这种情况下,对该文件的下一次写将加长该文件,并在文件中构成一个空洞,这一点是允许的.位于文件中但没有写过的字节都被读为 ...

  4. Linux进程管理 - PRI,nice,free,uname,netstat

    优先运行序 (priority, PRI) 这个 PRI 值越低代表越优先的意思.不过这个 PRI 值是由核心动态调整的, 使用者无法直接调整 PRI 值的. 由於 PRI 是核心动态调整的,我们使用 ...

  5. HBase 协处理器实现二级索引

    HBase在0.92之后引入了coprocessors,提供了一系列的钩子,让我们能够轻易实现访问控制和二级索引的特性.下面简单介绍下两种coprocessors,第一种是Observers,它实际类 ...

  6. Android studio 项目(Project)依赖(非Module)

    Android studio 项目(Project)依赖(非Module) 0. 前言 对于Module 级别的依赖大家都知道,今天说下Android Studio下的项目依赖. 场景: A Proj ...

  7. Shiro之身份认证、与spring集成(入门级)

    目录 1. Shro的概念 2. Shiro的简单身份认证实现 3. Shiro与spring对身份认证的实现 前言: Shiro 可以非常容易的开发出足够好的应用,其不仅可以用在 JavaSE 环境 ...

  8. path sum II(深度优先的递归实现掌握)

    Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the given su ...

  9. Maximum Subarray(最大子数组)

    Find the contiguous subarray within an array (containing at least one number) which has the largest ...

  10. [Domino]Java访问Domino必需配置的服务器设置

    应用场景 我们需要通过Java远程访问IBM Lotus Domino R6和R5服务器,从中获取用户邮箱的邮件信息等关键数据.我们不需要提供每一个用户密码以及ID文件. 我们的具体做法是,通过Dom ...