MAVEN 编译打包测试 指定本地jar
2014-01-09 18:32
330 查看
转载自:http://penuel.iteye.com/blog/1766102
maven对于互联网开发,进行版本管理有着不可或缺的作用;
而经常开发的程序猿直接联调或者依赖未上线或deploy的版本,需要在本地编译打包通过,如果pom文件依赖了maven库里的,则会出现冲突;
那么怎样进行本地jar依赖打包编译呢?
提供3种方式:
第一种方式:更改pom文件:
将原来的pom依赖,更改为新的依赖,如下面代码,加systemPath和scope指定你文件的位置
Java代码
<!-- <dependency>
<groupId>com.xiaonei.xce</groupId>
<artifactId>oce-adapter</artifactId>
<version>1.1-SNAPSHOT</version>
</dependency> -->
<dependency>
<groupId>com.xiaonei.xce</groupId>
<artifactId>oce-adapter</artifactId>
<version>1.1-SNAPSHOT</version>
<systemPath>/home/penuel/renren/other-jar/oce-adapter-1.1-SNAPSHOT.jar
</systemPath>
<scope>system</scope>
</dependency>
注意:这样加依赖有2点需要注意:
1:如果你本身依赖的oce-adapter依赖了其他jar,而这些间接依赖的jar在你自己项目里还用到了,则需要在pom里加这些间接依赖,因为新改的这种依赖方式,只会添加一个jar进来;
2:这样添加之后,编译是可以通过的,但是打包还会会从本地maven库里取相应的jar(如果你本地库里没有,则不会打包到工程里),而不是把你配置的jar文件打包进去,所以需要打包完成后将lib下jar替换掉;
第二种方式:直接替换本地maven库里jar文件:
用下面命令:
Java代码
mvn install:install-file
-DgroupId=com.xiaonei.xce-DartifactId=oce-adapter
-Dversion=1.1-SNAPSHOT
-Dfile=/home/penuel/renren/other-jar/oce-adapter-1.1-SNAPSHOT.jar
-Dpackaging=jar \-DgeneratePom=true
这样本地库里就是你要测试的这个jar了,打包编译两不误;记得备份之前的版本,说不定有用。(如果换不了,记得把之前的mavn库中该jar文件夹删掉,则执行命令即可)
第三种方式:取消pom依赖,直接在buildpath里面添加jar路径;或者在eclipse里面build path的add libraires,然后进行编译,打包也和第一种方式一样;
最后,如果测试过,包deploy了,记得mvn -U 或者改回pom文件。
maven对于互联网开发,进行版本管理有着不可或缺的作用;
而经常开发的程序猿直接联调或者依赖未上线或deploy的版本,需要在本地编译打包通过,如果pom文件依赖了maven库里的,则会出现冲突;
那么怎样进行本地jar依赖打包编译呢?
提供3种方式:
第一种方式:更改pom文件:
将原来的pom依赖,更改为新的依赖,如下面代码,加systemPath和scope指定你文件的位置
Java代码
<!-- <dependency>
<groupId>com.xiaonei.xce</groupId>
<artifactId>oce-adapter</artifactId>
<version>1.1-SNAPSHOT</version>
</dependency> -->
<dependency>
<groupId>com.xiaonei.xce</groupId>
<artifactId>oce-adapter</artifactId>
<version>1.1-SNAPSHOT</version>
<systemPath>/home/penuel/renren/other-jar/oce-adapter-1.1-SNAPSHOT.jar
</systemPath>
<scope>system</scope>
</dependency>
注意:这样加依赖有2点需要注意:
1:如果你本身依赖的oce-adapter依赖了其他jar,而这些间接依赖的jar在你自己项目里还用到了,则需要在pom里加这些间接依赖,因为新改的这种依赖方式,只会添加一个jar进来;
2:这样添加之后,编译是可以通过的,但是打包还会会从本地maven库里取相应的jar(如果你本地库里没有,则不会打包到工程里),而不是把你配置的jar文件打包进去,所以需要打包完成后将lib下jar替换掉;
第二种方式:直接替换本地maven库里jar文件:
用下面命令:
Java代码
mvn install:install-file
-DgroupId=com.xiaonei.xce-DartifactId=oce-adapter
-Dversion=1.1-SNAPSHOT
-Dfile=/home/penuel/renren/other-jar/oce-adapter-1.1-SNAPSHOT.jar
-Dpackaging=jar \-DgeneratePom=true
这样本地库里就是你要测试的这个jar了,打包编译两不误;记得备份之前的版本,说不定有用。(如果换不了,记得把之前的mavn库中该jar文件夹删掉,则执行命令即可)
第三种方式:取消pom依赖,直接在buildpath里面添加jar路径;或者在eclipse里面build path的add libraires,然后进行编译,打包也和第一种方式一样;
最后,如果测试过,包deploy了,记得mvn -U 或者改回pom文件。
相关文章推荐
- MAVEN 编译打包测试 指定本地jar
- maven 编译、打包本地jar文件的处理办法
- 将maven项目打成jar包放到本地mvn库中 并指定用mahout编译
- Maven之——使用本地jar包并打包进war包里面的方法
- maven打包排除排除指定文件(war,jar)
- Maven -- 使用插件打包时,提示java编译异常,但是本地服务可以正常运行
- maven打包jar指定 Main-Class
- maven打包jar指定 Main-Class
- 构建工具-Maven-使用maven-assembly-plugin将依赖打包进jar并指定JDK版本
- maven打包找不到本地jar包的解决方法
- 分享知识-快乐自己:IDEA下maven编译打包Java项目成jar包但是resource下配置文件无法编译
- Maven引入本地Jar包并打包进War包中
- maven笔记-将本地jar包打包进可执行jar中
- springboot怎么使用maven打包时将本地jar包一块打进去
- 如何用maven 手动把本地jar安装到本地仓库和将本地项目打包并安装到本地资源仓库
- Springboot中如何引入本地jar包,并通过maven把项目成功打包成jar包部署
- IDEA下maven编译打包Java项目成jar包但是resource下配置文件打包不成功
- Eclipse的maven工程依赖本地非repository中的jar包编译报错的解决方案
- maven 打包时复制依赖的jar到指定的文件
- Maven打包可执行jar,同时指定依赖的jar