好处:

1、 依赖管理:对jar包统一管理

2、 项目构建:

项目编码完成后,对项目进行编译、测试、打包、部署。之前项目构建通过eclipse工具实现。今天学习新的工具也可以实现这些过程。比如:通过maven工具,使用命令实现项目一键发布

Maven程序配置,配置本地仓库

注意:maven工具必须有jdk环境。并且:jdk的环境变量key 必须是:JAVA_HOME

配置环境变量:MAVEN_HOME 配置到bin目录上一级

引入path环境变量中:

配置本地仓库

1  将资料中jar包仓库压缩包解压到本地磁盘

2  在maven程序配置文件中指定maven仓库路径

Maven仓库类型

Maven的标准目录结构

传统:

ProjectName

src

WebContent/WEB-INF/web.xml

 

Maven:

ProjectName

  src

    main

      java

      resources

      [webapp]/WEB-INF/web.xml

    Test

      Java

      resources

  pom.xml

1 Maven常用的命令

1.1 clean:清理

将项目根目录下target目录删除。

1.2 compile:编译

将src下java文件编译为.class文件

1.3 test:测试

将src/test/java目录下的单元测试类中方法执行。  注意:单元测试类名必须为 XxxTest.java

1.4 package:打包

java-project  ---->  xxx.jar

web-project ------>   xxx.war

 

打包项目到target目录。

 

现象:测试时候也会执行代码编译; 执行打包时候也会执行编译+测试

1.5 install:安装-安装到本地仓库

将项目打包发布到本地仓库

 

现象:执行install命令,compile,test,package都执行

1.1 maven的概念模型

说明maven的两个核心:


1 在eclipse中配置maven插件

1 使用maven整合web项目(servlet)

1.1 创建maven工程

创建好maven-web项目报错:

1、 web.xml没有:添加一个

2、 jdk版本1.5

1.2 创建servlet、查找jar包

创建好servlet缺失jar包。

1 使用maven整合struts2项目

1、 在pom.xml中添加struts2-core的jar包

<dependencies>

<dependency>

<groupId>org.apache.struts</groupId>

<artifactId>struts2-core</artifactId>

<version>2.3.24</version>

</dependency>

</dependencies>

2、 搭建struts2环境

a) 在classpath下创建struts.xml

b) 在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>

3、 需求:在地址栏中发送请求,请求action中调用action中某个方法

4、 创建action类

5、 在struts.xml通过struts2框架来创建action对象。

6、 在action添加save方法

7、 配置结果视图

Tomcat7插件

使用maven运行项目,使用版本tomcat6.

在pom.xml中添加tomcat7插件:

<!-- 添加tomcat插件 -->

<plugin>

<groupId>org.apache.tomcat.maven</groupId>

<artifactId>tomcat7-maven-plugin</artifactId>

<version>2.2</version>

<configuration>

<!--访问项目路径 -->

<path>/test</path>

<!-- 端口号 -->

<port>8888</port>

<uriEncoding>utf-8</uriEncoding>

</configuration>

</plugin>

Tomcat:run命令就使用tomcat6,如果让tomcat7的插件生效,需要使用命令:tomcat7:run

Maven干货的更多相关文章

  1. Maven干货2

    回顾: 1. maven核心 a) 依赖管理:对jar统一管理.根据坐标(groupId,artifactId,version)去找jar包,本地,私服,中央仓库 b) 项目构建:通过命令构建.cle ...

  2. 纯干货!华为软件开发云编译构建之Maven

    一.Maven介绍 Maven是一个项目管理和整合的工具.Maven为开发者提供了一套完整的构建生命周期框架.开发团队基本不用花多少时间就能自动完成工程的基础构建配置,因为Maven使用了一个标准的目 ...

  3. 「干货分享」模块化编程和maven配置实践一则

    ​ 封面 说到模块化编程,对我个人而言首先起因于团队协作的需要,也就是组织架构结构特点来决定,而不是跟风求得自我认同,看看我们团队的组织结构: ​ 其中: 基础平台部职责: 1.AI实验室:语音,图像 ...

  4. 项目管理01--使用Maven构建项目(纯干货)

    目录 1. Maven基础知识 2. Maven实战.开发.测试.打包.部署一个Web项目 一.Maven基础知识 Maven坐标 Maven提供了一个中央仓库,里面包含了大量的开源软件的jar包,只 ...

  5. 基于分布式、服务化的maven项目文件规划

    引言 此文不是纯粹介绍maven概念,而是介绍一个具体的maven项目文件规划 这个规划可能适合于研发比较复杂的业务,这些业务有分布式和服务化的需要. 这个规划能够解决因为分布式和服务化要求而引起的项 ...

  6. Maven学习总结(一)——Maven入门

    原博文出自于:http://www.cnblogs.com/xdp-gacl/p/3498271.html 感谢! 一.Maven的基本概念 Maven(翻译为"专家"," ...

  7. 【转】IntelliJ IDEA2016.1 + maven 创建java web 项目

    最近开始使用idea 来写java项目了,这个很流行,相比Eclipse方便了很多.功能多了,相对应的使用的复杂度也较高了,因为网上很多的使用和创建项目的简单教程,都是基于老版本的,每个新版本都有不一 ...

  8. JavaEE开发基于Eclipse的环境搭建以及Maven Web App的创建

    本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project.本篇博客是JavaEE开发的开篇,也是基础.本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具 ...

  9. Maven学习专题--Maven入门及安装

    因为项目需要,新项目需要使用Maven开发,但是组内大部分没有接触过maven.我就毅然承担搭建maven环境的任务了.因为一切重头开始,就想把自己的整个搭建环境.项目创建.框架整合和模块管理整个过程 ...

随机推荐

  1. maven编译常见错误解决方法整理

    程序包com.sun.xml.internal.ws.spi不存在 当maven项目里面有用到JDK内部的一些类,接口(如:com.sun.xml.internal.ws.spi.ProviderIm ...

  2. Day01_变量,数据类型_程序交互_流程控制

    python执行的两种方式: 1,交互的方式:  优点:可以及时调试程序,调试方法  缺点: 无法永久保存代码 2,保存在文件中执行  优点:可以永久保存代码,在执行的时候调用  缺点:不能即时调试代 ...

  3. Codeforces Round #371 (Div. 2) 转换数字

    C. Sonya and Queries time limit per test 1 second memory limit per test 256 megabytes input standard ...

  4. Javascript 判断变量类型的陷阱 与 正确的处理方式

    Javascript 由于各种各样的原因,在判断一个变量的数据类型方面一直存在着一些问题,其中最典型的问题恐怕就是 typeof null 会返回 object 了吧.因此在这里简单的总结一下判断数据 ...

  5. CJOJ 2485 UVa 11991 生日礼物 / UVa 11991 Easy Problem from Rujia Liu?

    CJOJ 2485 UVa 11991 生日礼物 / UVa 11991 Easy Problem from Rujia Liu? Description (原题来自刘汝佳<训练指南>Pa ...

  6. js&jquery跨域详解jsonp,jquery并发大量请求丢失回调bug

    URL  说明 是否允许通信 http://www.a.com/a.js http://www.a.com/b.js 同一域名下 允许 http://www.a.com/lab/a.js http:/ ...

  7. CentOS环境下中文显示乱码,vim和ls命令显示中文均为乱码的解决办法

    1.登陆linux系统打开操作终端之后,输入 echo $LANG可以查看当前使用的系统语言 2.查看是否有中文语言包可以在终端输入 locale命令,如有zh cn 表示已经安装了中文语言 3.如果 ...

  8. Spring+SpringMVC+MyBatis深入学习及搭建(十三)——SpringMVC入门程序(二)

    1.非注解的处理器映射器和适配器 1.1非注解的处理器映射器 前面我们配置的org.springframework.web.servlet.handler.BeanNameUrlHandlerMapp ...

  9. 关于net mail组件ssl端口问题

    最近开发一个项目使用到.net mail组件发送邮件.在开发环境中一切正常,可是部署到阿里云服务器上死活发送不出去,一直连接不上,或者报语法错误. 然后是各种折腾,各种测试,最后发现,使用ssl的时候 ...

  10. docker~Dockerfile优化程序的部署

    回到目录 一些理论 我们都知道docker这个容器工具可以帮助我们快速进行环境的部署,这对于运营人员来说,无疑是个福音,而这个工作大叔认为不应该是运营人员干的,而是由开发人员来做,因为只有你知道你干的 ...