maven上传jar包或pom文件到远程仓库
一、 步骤
有时候,项目中打好的jar包或pom文件需要上传到远程仓库,步骤总结如下:
- 安装好maven,网上有很多教程,默认已安装
- 工程中的settings.xml增加相应的server账号密码:
<servers>
<server>
<id>duke_Release</id>
<username>maven-user</username>
<password>maven-user@duke2021</password>
</server>
<server>
<id>duke_Snapshot</id>
<username>maven-user</username>
<password>maven-user@duke2021</password>
</server>
</servers>
3. pom文件中新增以下配置
<distributionManagement>
<repository>
<id>duke_Release</id> <!--四个id 要保持一致-->
<url>http://cloudartifact.ipd.duke.com/artifactory/maven-public/</url> <!-- distributionManagement里面url可改为自己的私仓地址-->
</repository>
<snapshotRepository>
<id>duke_Snapshot</id>
<url>http://cloudartifact.ipd.duke.com/artifactory/maven-public/</url>
</snapshotRepository>
</distributionManagement>
4. 执行传包命令
详细信息可参考官网文档,命令格式如下:
mvn deploy:deploy-file -DgroupId=<group-id> \
-DartifactId=<artifact-id> \
-Dversion=<version> \
-Dpackaging=<type-of-packaging> \
-Dfile=<path-to-file> \
-DrepositoryId=<id-to-map-on-server-section-of-settings.xml> \
-Durl=<url-of-the-repository-to-deploy>
举例说明,标红的部分,需要根据每个包的路径和版本等修改
|
mvn deploy:deploy-file -Dfile=D:\data\.m2\repository2\com\xxx\xxx\duke\duke-basic\1.0.1-SNAPSHOT\duke-basic-1.0.1-SNAPSHOT.jar -Dpackaging=jar -DgroupId=com.xxx.xxx.duke -DartifactId=duke-basic -Dversion=1.0.1-SNAPSHOT -DrepositoryId=dukeServiceSnapshot -Durl=http://cmc.xxx.dragon.tools.xxx.com/artifactory/maven-public
|
二、踩坑总结
1. mvn deploy报错报错org.apache.maven.plugin.MojoFailureException
解决方法:将要安装的jar和pom copy到其它目录再安装,只要不在本地仓库目录都应该可以.
2. 如何删除已经发布到 mavenCentral 远程仓库中的包
官方解释:你可以重新发一个新版本,但是对于已经发布的版本,不好意思你不能修改。

3. maven进行compile操作时Invalid packaging for parent POM,must be pom but is_jar这个错误
查看自己父模块和子模块的POM.XML文件,有没有指定打包方式,一般MAVEN的工程的父模块的POM.XML的打包方式为pom方式,子模块工程的POM.XML的打包方式为jar包方式,所以应加入如下代码分别到父子POM.XML文件里。
<packaging>pom</packaging> -- 父pom.xml
<packaging>jar</packaging> -- 子pom.xml
maven上传jar包或pom文件到远程仓库的更多相关文章
- maven上传jar包到nexus私服后的存放路径 以及 使用IDEA上传jar包的步骤
maven上传jar包到nexus私服的方法,网上大神详解很多,那么上传后的jar包存放到哪里了呢? 在下使用nexus3.2.1版本,在本地搭建了私服,使用maven上传jar包.最后结果如下: 点 ...
- maven安装 maven上传jar包到库里面
maven的安装与配置:http://pansanday.blog.163.com/blog/static/381662802012727103454743/ maven上传jar包到库里面: 将私有 ...
- 实测Maven上传jar包到私服的方法归纳
Hello,各位小伙伴大家好,我是小栈君.好久不见,最近因为工作的缘故,导致了更新变慢,但是小栈君也在积极的做素材的规划,毕竟学习知识点的归纳和提炼需要一定的时间. 所以还请大家多多见谅,下一期的分享 ...
- Maven上传jar包到私服
1.认证,在M2_HOME/conf/settings.xml配置用户名密码 <server> <id>releases</id> <username> ...
- maven 上传jar包到私服仓库
按一下形式上传jiar包 # mvn deploy:deploy-file -DgroupId=com.itextpdf -DartifactId=itextpdf -Dversion=5.5.13 ...
- 8.maven上传jar包以及SNAPSHOT的一个坑
1,手动上传包 如何将一些新的外部包上传到私服当中呢? 首先是要登录上去,然后点击 Upload,找到 maven-local将jar包找到选中,然后填写对应的三个定位信息即可上传. 在引用的时候,道 ...
- Maven 上传 jar包 到私服
登录Nexus后,点击右侧的“Repositories”,显示当前Nexus所管理的Repository, 默认情况下Nexus为我们创建了以下主要的Repository: 1.PublicRepos ...
- maven上传jar包(oracle jdbc驱动)
由于Oracle授权问题,Maven3不提供Oracle JDBC driver,为了在Maven项目中应用Oracle JDBC driver,必须手动添加到本地仓库.一.首先要得到Oracle J ...
- Maven第四篇【私有仓库、上传jar包、引用私服jar包、上传本地项目到私服】
搭建私有服务器 前面已经说过了,我们使用Maven的使用,如果需要导入相对应的jar包,Maven首先会在我们的本地仓库中寻找->私有仓库->中心仓库- 然而,我们的本地仓库常常没有想要的 ...
- gradle上传jar包到maven公共仓库
首先这里说的中央仓库 是指的 https://issues.sonatype.org/ 而不是maven私服. 其次是使用gradle上传jar包,maven上传,网上有很多教程,这里不做赘述. 首选 ...
随机推荐
- 原生js实现jsonp
有时候用js封装个小工具需要一些已经被封装好的函数,比如jq的jsonp 但是原生小工具如果仅仅为了这个就导入一个上百kb的jQuery不划算 然后我去网上找,一大堆废文,还是自己发一篇记录一下吧 下 ...
- CVE-2022-32532 Apache Shiro 身份认证绕过
漏洞名称 CVE-2022-32532 Apache Shiro 身份认证绕过 利用条件 Apache Shiro < 1.9.1 漏洞原理 使用RegexRequestMatcher进行权限配 ...
- 如何通过Java代码在PDF中插入、替换或删除图像?
图文并茂的内容往往让人看起来更加舒服,如果只是文字内容的累加,往往会使读者产生视觉疲劳.搭配精美的文章配图则会使文章内容更加丰富,增加文章可读性的同时,也能提升用户体验.但由于PDF文档安全性较高,不 ...
- C++ 使用 new 创建二维数组
1. 直接创建 C++ 使用 new 创建二维数组最直接的方法就是 new T[M][N].返回的指针类型是 T (*)[N],它是指向数组的指针,可以直接使用数组下标形式访问元素.释放内存直接使用d ...
- 序列化框架-Kyro简述
网上有很多资料说 Kryo 只能在 Java 上使用,这点是不对的,事实上除 Java 外,Scala 和 Kotlin 这些基于 JVM 的语言同样可以使用 Kryo 实现序列化. 1.使用方法 ( ...
- angular组件共用服务打印日志父子组件传值2创建服务注入
- Python解释器下载与安装
Python解释器下载与安装 一.Python解释器 1.Python的发展方向 web方向,自动化运维,自动化测试,自动化办公,网络爬虫,金融量化,人工智能,机器学习,数据分析 2.Python解释 ...
- Lock锁-线程状态概述
Lock锁 java.util.concurrent.locks.Lock机制提供了比synchronized代码块和synchronized方法更广泛的锁定操作,同步代码块/同步方法具有的功能Loc ...
- 论文翻译:2022_Phase-Aware Deep Speech Enhancement: It’s All About The Frame Length
摘要 虽然相位感知语音处理近年来受到越来越多的关注,但大多数帧长约为32 ms的窄带STFT方法显示出相位对整体性能的影响相当温和.与此同时,现代基于深度神经网络(DNN)的方法,如Conv-TasN ...
- wsl 自动配置代理地址