maven 上次jar包到私服

1.上传jar包,
2.项目组上传jar包
(1)修改本地的settings.xml文件认证部分
  <servers>       
          <!--根据情况选择上传类型-->
          <!--稳定版本配置-->
       <server>
         <id>releases</id>
         <username>soa账号</username>
         <password>soa密码</password>
       </server>
          <!--快照版本-->
       <server>
         <id>snapshots</id>
         <username>soa账号</username>
         <password>soa密码</password>
       </server> 
  </servers>

①deploy releases版本
mvn deploy:deploy-file -DgroupId=XXX -DartifactId=XXX -Dversion=X.X.X -Dpackaging=jar -Dfile=XXX.jar -Durl=http://maven.cnsuning.com/content/repositories/releases/ -DrepositoryId=releases
②deploy snapshots版本
mvn deploy:deploy-file -DgroupId=XXX -DartifactId=XXX -Dversion=X.X.X -Dpackaging=jar -Dfile=XXX.jar -Durl=http://maven.cnsuning.com/content/repositories/snapshots/ -DrepositoryId=snapshots
(3)对于特殊情况:
区分从同一个pom编译出来的但是内容不同的,但groupId、artifactId、version相同的包时,需要使用classifier参数。命令如下
mvn deploy:deploy-file -DgroupId=XXX -DartifactId=XXX -Dversion=XXX -Dclassifier=XXX -Dpackaging=jar -Dfile=XXX.jar -Durl=http://maven.baidu.com/content/repositories/releases/ -DrepositoryId=releases
例如 上传sources和pom.xml可以参考下面:
mvn deploy:deploy-file -DgroupId=XXX      -DartifactId=XXX  -Dversion=XXX-SNAPSHOT  -Dpackaging=jar  -Dclassifier=sources -Dfile=scts-invoke-sncd-sources.jar -Durl=http://maven.baidu.com/content/repositories/snapshots/ -DrepositoryId=snapshots

mvn deploy:deploy-file -DgroupId=XXX  -DartifactId=XXX  -Dversion=XXX  -Dpackaging=pom -Dfile=pom.xml -Durl=http://maven.baidu.com/content/repositories/releases/ -DrepositoryId=releases
二、上传注意事项
1.snapshots版本:上传时必须是:-Dversion=版本号-SNAPSHOT 。以上两个版本根据实际情况上传,并不都是需要上传的。
2.相关参数:
-Durl                   是指要deploy到仓库的路径
-DrepositoryId    jar 包的repositoryid,即releases还是snapshots
-Dfile                    jar包的具体路径,指绝对路径,比如:D:/test/test.jar
-Dversion           jar的版本
-Dclassifier     用于区分从同一个pom编译出来的但是内容不同的同名包,例如同一个工程编译出两个artifact,一个支持jdk1.5一个支持jdk1.4,那么就可以使用这个来命名为jdk15和jdk14来区分,它如果出现在包名中,那么它必须跟在版本号后。还有一种情况是将一个工程的一些次要artifact附到主要artifact中,就可以使用这个来区分,例如一个工程产生source,javadoc,class三种东西,那么就可以使用不同的classifier来分别标识这些东西 。
3.上传报错:
在执行该命令的时候,有时候看到提示需要POM文件,但上传包是不需要pom文件的。
最大可能是你语句打错了如多了一个空格和换行,这样语句直接截断到换行前面,cmd就找它可以认识的语句执行,比如直接执行mvn,而mvn是对项目打包,是要pom文件的。
所以请耐心把命令重新检查一下。
注意:一般来说上传报错为401forbidden时都是由于maven的配置文件里库ID配置错误,请仔细检查。
请把maven的配置文件setting.xml 拷贝到C:\Users\工号\.m2下面一份,确保正确。

确认有权限的情况下,还是报错403,是密码错误。如果确认密码是soa的密码,那么请联系管理员。
报400错误的同学就不要纠结了,是maven库里面有一个一模一样的包了,不允许覆盖,所以400了。请更新版本号重新上传吧!

猜你喜欢

转载自lsh2366254.iteye.com/blog/2369794