zoukankan      html  css  js  c++  java
  • MAVEN 编译打包测试 指定本地jar

    转载自:http://penuel.iteye.com/blog/1766102


    maven对于互联网开发,进行版本管理有着不可或缺的作用; 
    而经常开发的程序猿直接联调或者依赖未上线或deploy的版本,需要在本地编译打包通过,如果pom文件依赖了maven库里的,则会出现冲突; 
    那么怎样进行本地jar依赖打包编译呢? 
    提供3种方式: 
    第一种方式:更改pom文件: 
    将原来的pom依赖,更改为新的依赖,如下面代码,加systemPath和scope指定你文件的位置 

    Java代码  收藏代码
    1.    <!-- <dependency>   
    2.        <groupId>com.xiaonei.xce</groupId>   
    3.        <artifactId>oce-adapter</artifactId>   
    4.        <version>1.1-SNAPSHOT</version>   
    5.    </dependency> -->  
    6.    <dependency>  
    7. <groupId>com.xiaonei.xce</groupId>  
    8. <artifactId>oce-adapter</artifactId>  
    9. <version>1.1-SNAPSHOT</version>  
    10. <systemPath>/home/penuel/renren/other-jar/oce-adapter-1.1-SNAPSHOT.jar  
    11. </systemPath>  
    12. <scope>system</scope>  
    13.     </dependency>  

    注意:这样加依赖有2点需要注意: 
    1:如果你本身依赖的oce-adapter依赖了其他jar,而这些间接依赖的jar在你自己项目里还用到了,则需要在pom里加这些间接依赖,因为新改的这种依赖方式,只会添加一个jar进来; 
    2:这样添加之后,编译是可以通过的,但是打包还会会从本地maven库里取相应的jar(如果你本地库里没有,则不会打包到工程里),而不是把你配置的jar文件打包进去,所以需要打包完成后将lib下jar替换掉; 

    第二种方式:直接替换本地maven库里jar文件: 
    用下面命令: 
    Java代码  收藏代码
    1. mvn install:install-file   
    2.   
    3. -DgroupId=com.xiaonei.xce-DartifactId=oce-adapter  
    4. -Dversion=1.1-SNAPSHOT  
    5. -Dfile=/home/penuel/renren/other-jar/oce-adapter-1.1-SNAPSHOT.jar  
    6. -Dpackaging=jar -DgeneratePom=true  

    这样本地库里就是你要测试的这个jar了,打包编译两不误;记得备份之前的版本,说不定有用。(如果换不了,记得把之前的mavn库中该jar文件夹删掉,则执行命令即可) 

    第三种方式:取消pom依赖,直接在buildpath里面添加jar路径;或者在eclipse里面build path的add libraires,然后进行编译,打包也和第一种方式一样; 

    最后,如果测试过,包deploy了,记得mvn -U 或者改回pom文件。 

  • 相关阅读:
    jexboss-20170328 帮助信息
    clusterd-20151119 帮助信息
    XSStrike-20191220 帮助信息
    Astra-20190405 帮助信息
    InsightScan-20150320 帮助信息
    BBScan-20200419 帮助信息
    Tplmap-20210117 帮助信息
    HDU-5446 Unknown Treasure
    中国剩余定理学习笔记
    [BZOJ5042]LWD的分科岛
  • 原文地址:https://www.cnblogs.com/ycpanda/p/3637331.html
Copyright © 2011-2022 走看看