Maven好处:
 1、依赖管理:对jar包统一管理
 2、项目构建:项目编码完成后,对项目进行编译、测试、打包、部署,实现项目一键发布

1.配置环境变量
    注意:maven工具必须有jdk环境。并且:jdk的环境变量key 必须是:JAVA_HOME
    配置环境变量:MAVEN_HOME 配置到bin目录上一级
2.配置本地仓库
    在maven程序配置文件中指定maven仓库路径
    settings.xml  :  <localRepository>D:\soft\bos_repository</localRepository>

Maven的标准目录结构:

ProjectName
    src
        main
            java             ---->程序主体项目源码
            resources        ---->项目运行需要的配置文件
            [webapp](放入一些页面素材,相当于WebContent)/WEB-INF/web.xml    
        Test
            Java             ---->单元测试类
            resources
    pom.xml                 ---->每一个Maven都有的配置文件
    

Maven常用命令:
1.clean: 清理     命令窗口:mvn clean
  将项目根目录下target目录删除。
2.compile: 编译
  将src下java文件编译为.class文件
3.test: 测试
  将src/test/java目录下的单元测试类中方法执行。  注意:单元测试类名必须为 XxxTest.java
4.package: 打包
  java-project  ---->  xxx.jar
  web-project ------>   xxx.war
  打包项目到target目录。
  现象:测试时候也会执行代码编译; 执行打包时候也会执行编译+测试
5.install: 安装-安装到本地仓库
  将项目打包发布到本地仓库
  现象:执行install命令,compile,test,package都执行

Maven的概念模型
 两个核心:
 1.依赖管理模型(Dependency)
 2.项目对象模型(POM)

在eclipse中配置maven插件
1.统一版本
  Window--Preferences--Maven--Installations--Add--选择--finish--Apply
2.让eclipse知道本地仓库在哪里
  (1)Window--Preferences--Maven--User Settings--User Settings--
   xxxxxxx..apache-maven-3.3.9\conf\settings.xml
  (2)  .....      Local Repository,选择本地仓库----OK
3.构建索引

使用maven整合web项目(servlet):
创建好maven-web项目报错:
1、web.xml没有:添加一个
2、jdk版本1.5 :  pom.xml中配置版本为1.7
 然后项目上右键--Maven--Update project..
 在公司把项目档下来之后,第一件事就是更新项目.(让eclipse上的插件跟本地仓库建立对应关系)

使用maven整合struts2项目
 项目上右键--java EE tools--generate deployment descriptor stub,来生成web.xml文件

Tomcat7插件
  Tomcat:run命令就使用tomcat6,如果让tomcat7的插件生效,需要使用命令:tomcat7:run
  重启,需要先在控制台点中止,然后再次启动
  这种运行有个弊端,不利于debug调试,所以建议用Tomcat的servers来运行,而不是用maven的
  tomcat插件来直接运行.

运行一次tomcat:run,修改代码后,再次运行tomcat:run之前,要在Console控制台点停止,清除所有
在运行的程序后,再开始运行.否则会报端口冲突的错误.

alt+shift+a

db.properties中:
jdbc.driverClass = com.mysql.jdbc.Driver
jdbc.jdbcUrl=jdbc:mysql://localhost:3306/maven
jdbc.user=root
jdbc.password=root

user不要写成username,否则如果项目部署在Windows环境下,在读取applicationContext.xml文件时,通过
  OGNL表达式取值时,${username}会把计算机的名字取出来.
所有的key,前面要加个jdbc.的前缀,否则如果项目部署在Linux环境下,${user}取值会出问题.

使用maven对项目拆分,聚合:
 
父工程:Packaging:pom
子模块:Packaging:
        ssh-dao:jar
        ssh-service:jar
        ssh-web:war

@ContextConfiguration("classpath:spring/applicationContext-*.xml")
@ContextConfiguration("classpath*:spring/applicationContext-*.xml")

将父工程打包到本地仓库
pom.xml中添加项目依赖或者安装到本地仓库的jar包依赖

ssh-web模块:
  web.xml中:
  监听器:
      <!-- 指定spring配置文件路径 -->
      <param-value>classpath*:spring/applicationContext-*.xml</param-value>

Maven注意事项的更多相关文章

  1. Eclipse环境下使用Maven注意事项

    在最新版本的Eclipse Java EE IDE for Web Developers中已经包含Maven 2 在File,New中可以看到Maven Project,新建, 按照步骤一路下来,要求 ...

  2. maven实现tomcat热部署

    1.使用maven+tomcat事项热部署 1.1修改tomcat-user.xml <role rolename="manager-gui"/> <!--man ...

  3. Maven初步

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

  4. idea本地Maven仓库不能下载依赖jar包的解决方案

    1.确认maven是否正正常安装,是否配置了环境变量,可以通过命令 mvn -version 看是否显示maven的版本信息. 2.检查maven的setting.xml配置文件中本地仓库位置配置是否 ...

  5. maven nexus deploy方式以及相关注意事项

    以前公司都是配管负责管理jar的,现在没有专职配管了,得自己部署到deploy上供使用.总的来说,jar部署到nexus上有两种方式: 1.直接登录nexus控制台进行上传,如下: 但是,某些仓库可能 ...

  6. Windows下安装和配置Maven的方法及注意事项

    首先,从http://maven.apache.org/download.cgi网站上下载适用于当前操作系统操作格式的最新版本的maven安装包.如:apache-maven-3.2.5-bin.zi ...

  7. maven中的snapshot来源与注意事项

    maven中的snapshot来源与注意事项 (2012-04-23 15:37:48) 转载▼ 标签: 杂谈 分类: java maven的依赖管理是基于版本管理的,在maven2之后,把版本管理细 ...

  8. maven nexus deploy方式以及相关注意事项(增加eclipse执行maven deploy)

    以前公司都是配管负责管理jar的,现在没有专职配管了,得自己部署到deploy上供使用.总的来说,jar部署到nexus上有两种方式: 1.直接登录nexus控制台进行上传,如下: 但是,某些仓库可能 ...

  9. maven管理本地jar包注意事项

    今天lucene中集成第三方中文分词器IKAnalyzer的时候遇到了相似的问题:lucene版本4.9.IKAnalyzer版本2012FF_hf1 直接去maven仓库下载,pom配置如下: &l ...

随机推荐

  1. Spring+SpringMVC+MyBatis深入学习及搭建(十七)——SpringMVC拦截器

    转载请注明出处:http://www.cnblogs.com/Joanna-Yan/p/7098753.html 前面讲到:Spring+SpringMVC+MyBatis深入学习及搭建(十六)--S ...

  2. Ext & Java 上存图片 Demo

    Ext & Java 上存图片 Demo Ext <html> <head> <script id="microloader" type=&q ...

  3. 简单svg动画实现

    一.将svg嵌入到html中 svg是指可伸缩矢量图形,它使用XML格式定义图像.在html中可以使用<svg>标签直接嵌入svg代码,例如: <svg version=" ...

  4. accp8.0转换教材第11章JAjax加护扩展理解与练习

    ①杂记:前面有原生态JavaScript实现ajax这里又多了更简单的方法实现ajax ②$.get()方法的常用参数 参数 类型 说明 url String 必选,规定发送地址 data Plain ...

  5. 最新的极光推送服务器端代码(java服务器后台向手机端自定义推送消息)

    一共两个类 一个Jdpush  一个JpushClientUtil 代码如下   注解都写的很清楚 package com.sm.common.ajpush; import org.slf4j.Log ...

  6. 接水问题【NOIP2010普及组】优先队列

    题目描述 学校里有一个水房,水房里一共装有 m 个龙头可供同学们打开水,每个龙头每秒钟的供水量相等,均为 1. 现在有 n 名同学准备接水,他们的初始接水顺序已经确定.将这些同学按接水顺序从 1到 n ...

  7. ps命令学习笔记

    最近在看linux优化大师这本书,第2章祥细讲解了分析系统用的工具,这里把一些内容整理出来,以便加深印像. 当进行系统分析时,ps命令显示有关选择的活跃进程的信息.ps命令提供当前已存在的进程列表,和 ...

  8. set-集合功能介绍

    叨逼叨:#集合 不可重复的列表 可变类型#1.添加 无则添加有则不操作 不可重复 # se = {'alex','eric','seven'} # se.add('qiqi') # se.add('b ...

  9. Java工程师的终极书单

    本份Java工程师的终极书单只在专业的Java技术博客–天天编码上发布,没有授权任何网站与个人转载. 坚持阅读好书是学习Java技术的好方式.但是,市面上与Java技术相关的书籍可谓数不胜数,如何从这 ...

  10. 第一课 1) 控制div属性 总结

    点击按钮变换属性: <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...