转载请注明来源:http://blog.csdn.net/loongshawn/article/details/50949000
1 Maven手动添加本地库依赖
1.1 说明
日常开发中并非所有的依赖都能够从maven中央库获取http://mvnrepository.com,比如公司内部团队开发的SDK包,这个时候就需要手动添加依赖进本地库。
1.1 方式
命令样例:
mvn install:install-file -Dfile=/Users/dddd/Downloads/taobao-sdk-java-auto_1458552744643/taobao-sdk-java-auto_1458552744643-20160321.jar -DgroupId=com.taobao.top -DartifactId=top-api-sdk-dev -Dversion=kelude-top-sdk-SNAPSHOT -Dpackaging=jar
添加代码:
localhost:~ dddd$ mvn install:install-file -Dfile=/Users/dddd/Downloads/taobao-sdk-java-auto_1458552744643/taobao-sdk-java-auto_1458552744643-20160321.jar -DgroupId=com.taobao.top -DartifactId=top-api-sdk-dev -Dversion=kelude-top-sdk-SNAPSHOT -Dpackaging=jar
参数说明:
Dfile-本地jar包路径
DgroupId-groupid
DartifactId-artifactid
packaging-包格式
添加结果:
localhost:~ dddd$ mvn install:install-file -Dfile=/Users/dddd/Downloads/taobao-sdk-java-auto_1458552744643/taobao-sdk-java-auto_1458552744643-20160321.jar -DgroupId=com.taobao.top -DartifactId=top-api-sdk-dev -Dversion=kelude-top-sdk-SNAPSHOT -Dpackaging=jar
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building Maven Stub Project (No POM) 1
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-install-plugin:2.4:install-file (default-cli) @ standalone-pom ---
[INFO] Installing /Users/dddd/Downloads/taobao-sdk-java-auto_1458552744643/taobao-sdk-java-auto_1458552744643-20160321.jar to /Users/dddd/Documents/repository/m2/repository/com/taobao/top/top-api-sdk-dev/kelude-top-sdk-SNAPSHOT/top-api-sdk-dev-kelude-top-sdk-SNAPSHOT.jar
[INFO] Installing /var/folders/69/0z2xxtd94656yc88kzbvk6hc0000gn/T/mvninstall7834458265615299867.pom to /Users/dddd/Documents/repository/m2/repository/com/taobao/top/top-api-sdk-dev/kelude-top-sdk-SNAPSHOT/top-api-sdk-dev-kelude-top-sdk-SNAPSHOT.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.427 s
[INFO] Finished at: 2016-03-21T17:45:50+08:00
[INFO] Final Memory: 7M/123M
[INFO] ------------------------------------------------------------------------
localhost:~ dddd$
2 Maven获取依赖树
2.1 说明
依赖树作用在于查看依赖间的关系,看依赖间有没有相互引用,可以有效排除由于jar包版本导致的依赖冲突。
2.2 方式
mvn dependency:tree -Dverbose
注意不能仅仅是mvn dependency:tree这个命令,因为这样看不出深层次的依赖引用关系,后面必须加上-Dverbose,以下为依赖树截取部分,从中可以看出aliyun-sdk-oss-2.1.0:jar包依赖httpclient-4.3.6.jar的包。
com.aliyun.oss:aliyun-sdk-oss:jar:2.1.0:compile
[INFO] | +- (org.apache.httpcomponents:httpclient:jar:4.3.6:compile - version managed from 4.4; omitted for conflict with 4.4)
[INFO] | +- org.jdom:jdom:jar:1.1:compile
[INFO] | \- net.sf.json-lib:json-lib:jar:jdk15:2.4:compile
[INFO] | +- commons-beanutils:commons-beanutils:jar:1.9.2:compile (version managed from 1.8.0)
[INFO] | | \- (commons-collections:commons-collections:jar:3.2.1:compile - omitted for duplicate)
3 Maven项目打包
3.1 说明
命令行窗口中打包项目
3.2 方式
mvn clean package
进入项目根路径,执行上述命令。
localhost:~ dddd$ cd /Users/dddd/Documents/workspace/rong-api-services/
localhost:rong-api-services dddd$ ls
config pom.xml src target
localhost:rong-api-services dddd$ mvn clean package