• Maven在Eclipse中的实用小技巧


    前言

        我们在开发的工程中很多都是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
  • 相关阅读:
    在Repeater的FooterTemplate显示某列总计
    对数据库数据操作,工厂方法设计模式(Factory Method)
    网页(aspx)与用户控件(ascx)交互与逻辑处理
    使用反射把用户控件(ASCX)传至网页(ASPX)
    软件研发公司,外观设计模式(Facade)
    看菜谱点餐,迭代设计模式(Iterator)
    There is not enough space on the disk.
    站点某些网页想显示母版页内的用户控件,某些网页不想显示,怎样实现
    C#反射(Reflection)对类的属性get或set值
    MS access 数据定时导入MS SQL Server
  • 原文地址:https://www.cnblogs.com/hujunzheng/p/5685914.html
Copyright © 2020-2023  润新知