前言

    我们在开发的工程中很多都是Maven项目,这样更加便于我们jar包的管理。而我们一般使用的IDE都是Eclipse,由于我们在日常的开发过程中会经常要用到一些Maven的操作,所以我今天主要跟大家分享一下我们在日常开发中的Maven实用小知识,让大家不再云里雾里。
 

安装配置Maven

 
    1.安装Maven,下载一个maven包解压,然后配置maven环境变量(配置完成后在dos窗口用mvn命令测试下)。
 
    2.在Eclipse中安装Maven插件,Maven插件在线安装地址为:http://m2eclipse.sonatype.org/sites/m2e
 
    3.在Eclipse中配置Maven的setting.xml,即在Preference——》Maven——》User Setting中配置(具体使用哪个setting.xml需要根据你的项目情况而定)。
 
    4.拷贝repository包,虽然这个不是必须的,一般通过项目在线更新jar包就可以,但是如果第一次的话最好是拷贝,因为一般项目都会比较大,jar包也会很多很多,在线下载的话会很慢。
        

引入和安装Maven项目

 
    如果第一步操作成功的话,你就可以在import窗口里面看到Maven的选项了,选择Import a exsiting Maven project 就行,前提是你先把Maven项目从版本库中down下来。
 
    如果你引入的这个项目A被别的Maven项目B引用了,那么我们最好是让项目B直接使用本地的项目A,而不是从repository中寻找对应项目A的jar包。这样会避免jar包更新出问题(比如项目A经常更新,jar包可能会更新不及时)。这样的话我们就需要将我们的项目A install到本地,install有两种方法:
        
    1.右键项目选择Maven菜单的install即可。
 
    2.使用命令,即将目录转换到该项目目录下,然后执行mvn clean install -Dmaven.test.skip=true即可。(推荐该方法,因为跳过了测试)    
        

更新jar包

 
   更新Maven的jar包应该是对于Maven项目最常用的操作了(因为项目一直在更新,那么jar包肯定也一直在变)。
 
   那么对于更新Maven的jar包的方法是:右键项目选择Maven菜单下的update project,然后在弹出框中有一个offline的选项,一般情况我们直接勾选offline(这样它之更新本地的jar包,比如上面提到的项目A的更改会更新,offline的速度很快);当然如果offline不行的话就需要取消对offline的勾选,即在线更新jar包,这样它会从远程服务器中下载最新的jar包。
 

常见小问题

 
   虽然在上面的几个步骤中看起来很简单,但是由于我们的maven插件不太好用,所以也会经常出一些小问题。
 
   1.install项目失败
 
   这个情况一般会发生在使用右键项目install的方法,因为它有一个test的过程,所以有时候会test失败,这时候我们只需要换成第二种使用install命令的方式就没问题了。
 
    2.更新jar包失败
 
    经常会有这样一个情况,明明都在线更新jar包了,可是jar包却还是很久以前的,然后在启动tomcat的时候总是会报ClassNotFound或者某个方法不存在的错误。
 
    对于这种情况我们最好是找到是哪个包,然后在repository中找到这个包删掉,之后再update那么这个包就会变成最新的了。
 
     3.项目莫名其妙的启动不了
 
     有时候我明明都在线更新了jar包,然后还clean项目了,但是就是启动失败,仔细一瞧,problems窗口中有错误提示,有什么cycle引用,这时候一般是因为有引用本地安装的项目还有引用repository中jar包,所以可能是你repository中的jar包最新了但是你本地引用的项目没有更新,这时我的无忧做法是:
 
     将引用到的项目全部update(记得update完后修改jdk),然后clean,然后重新install(最好使用命令方式),最后再将你的项目update然后clean,基本就没有问题了。
 
  转自:http://blog.csdn.net/huaweitman/article/details/50676573

Maven在Eclipse中的实用小技巧的更多相关文章

  1. 实用小技巧(一):UIScrollView中上下左右滚动方向的判断

    https://www.jianshu.com/p/93e8459b6dae 2017.06.01 01:13* 字数 674 阅读 1201评论 0喜欢 1 2017.06.01 01:13* 字数 ...

  2. Vim实用小技巧

    Vim实用小技巧 一些网络上质量较高的Vim资料 从我07年接触Vim以来,已经过去了8个年头,期间看过很多的Vim文章,我自己觉得非常不错,而且创作时间也比较近的文章有如下这些. Vim入门 目前为 ...

  3. svn checkout 实用小技巧

    svn checkout 实用小技巧 by:授客 QQ:1033553122   问题描述: 用svn小乌龟软件,进行update,commit之前,先要把svn工作目录checkout到本地,那么问 ...

  4. VC6.0实用小技巧

    VC6.0的若干实用小技巧 .检测程序中的括号是否匹配 把光标移动到需要检测的括号(如大括号{}.方括号[].圆括号()和尖括号<>)前面,键入快捷键 “Ctrl+]”.如果括号匹配正确, ...

  5. 必看!macOS进阶不得不知的实用小技巧

    不知道大家对使用苹果电脑的体验如何?您充分利用您的mac了吗?其实macOS上存在着许多快捷方式和技巧可以帮助简化我们的工作流程,提高效率,但是在日常生活中经常被人们忽略或者遗忘.以下是macdown ...

  6. 实用小技巧:Notepad++直接连接Linux

    实用小技巧:Notepad++直接连接Linux 前言 号称编辑器之神的Vim对于只会用几个基础操作的本人而言,在编辑一些大型文本有那么些力不从心: 平时都是通过Xftp拖到本地,修改完后再覆盖回去: ...

  7. PHP 常用函数库和一些实用小技巧

    PHP 常用函数库和一些实用小技巧 作者: 字体:[增加 减小] 类型:转载   包括文件读取函式,文件写入函式,静态页面生成函式,目录删除函式等   文件读取函式 //文件读取函式 function ...

  8. ACM 做题过程中的一些小技巧。

    ACM做题过程中的一些小技巧. 1.一般用C语言节约空间,要用C++库函数或STL时才用C++; cout.cin和printf.scanf最好不要混用. 2.有时候int型不够用,可以用long l ...

  9. C语言中的调试小技巧

    C语言中的调试小技巧 经常看到有人介绍一些IDE或者像gdb这样的调试器的很高级的调试功能,也听人说过有些牛人做工程的时候就用printf来调试,不用特殊的调试器.特别是在代码经过编译器一些比较复杂的 ...

随机推荐

  1. C#学习资源

    # 视频 C#程序设计 Cousera(推荐) # 文档 C#教程 MSDN Microsoft API 和参考目录

  2. 我为Net狂 ~ 社交平台系列小集合!

    微信平台: 我为Net狂(dotNetCrazy) 资源贴吧: http://tieba.baidu.com/f?kw=毒逆天 个人博客: http://dunitian.cnblogs.com/ h ...

  3. 清空Github上某个文件的历史版本

    title: 清空Github上某个文件的历史版本 author: 青南 date: 2015-01-08 16:04:53 categories: [经验] tags: [Github,histor ...

  4. document.documentElement.clientHeight 与 document.body.clientHeight(杜绝千篇一律的抄袭!!)

    document.documentElement.clientHeight 与 document.body.clientHeight用来获取页面可视高度我觉得有点问题.这两个应该不是一个东西. 页面中 ...

  5. OpenSceneGraph in ActiveX by ActiveQt

    OpenSceneGraph in ActiveX by ActiveQt eryar@163.com Abstract. Qt’s ActiveX and COM support allows Qt ...

  6. AbpZero--1.如何开始

    1.加群 群号:104390185,下载这个文件并解压 用VS2015打开aspnet-zero-1.9.0.1 2.修改Web项目web.config连接字符串 <add name=" ...

  7. SharePoint 2016 入门视频教程

    之前一直有朋友让自己录一些SharePoint的入门视频,之前没有太多时间,一个巧合的机会收到CSDN学院的邮件,可以在CSDN上发布视频教程,自己就录了一些.说起录视频也是蛮辛苦的,每天下班吃完饭要 ...

  8. HttpPost过程中使用的URLEncoder.encode(something, encode)

    URLEncoder.encode("刘美美", "utf-8").toString()       =     %E5%88%98%E7%BE%8E%E7%B ...

  9. iOS从零开始学习直播之1.播放

      对于直播来说,客户端主要做两件事情,推流和播放.今天先讲播放. 播放流程 1.拉流:服务器已有直播内容,从指定地址进行拉取的过程.其实就是向服务器请求数据. 2.解码:对视屏数据进行解压缩. 3. ...

  10. vim环境变量配置、背景色配置

    我们使用vi或者vim的时候,如果想要显示行号,可能会这样做:切换到命令模式,然后输入set nu,再按回车键就显示了:还有就是咱们在编写程序的时候,有的时候会希望按下回车键后,光标不是每次都在行首, ...