要将自定义的jar或者pom上传至nexus私服,需要配置maven的settings文件!

上传至nexus私服配置

1. settings配置

<!-- maven设置私服对应的信息:id、用户、密码,其中,id必须和distrubutionManagement的id相同 -->
<server>
<id>db-maven-release</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>db-maven-snapshot</id>
<username>admin</username>
<password>admin123</password>
</server>

2. 项目中pom配置

<!-- pom中增加url -->
<distributionManagement>
<repository>
<id>db-maven-release</id> <!-- id的名字可以任意取,但是在setting文件中的属性<server>的ID与这里一致 -->
<name>libs-release</name>
<url>http://192.168.100.99:8081/repository/db-maven-hosted/</url>
</repository>
<snapshotRepository>
<id>db-maven-snapshot</id>
<name>libs-snapshot</name>
<url>http://192.168.100.99:8081/repository/db-maven-snapshot/</url>
</snapshotRepository>
</distributionManagement>

上传jar包

  • IDEA上传比较简单,直接直接mvn clear deploy就可以了
mvn deploy:deploy-file --settings D:\apache-maven-3.6.1\conf\settings-nexus.xml
-DgroupId=com.dangbo -DartifactId=core-base -Dversion=1.0.0-SNAPSHOT -Dpackaging=jar -Dfile=pom.xml
-Durl=http://192.168.100.123:8081/repository/maven-snapshots/ -DrepositoryId=snapshots

上传pom文件

mvn deploy:deploy-file --settings D:\apache-maven-3.6.1\conf\settings-nexus.xml -Dfile.encoding=UTF-8
-DgroupId=com.dangbo -DartifactId=core-dependencies -Dversion=1.0.0-SNAPSHOT -Dpackaging=pom
-Dfile=pom.xml -Durl=http://192.168.100.123:8081/repository/maven-snapshots/ -DrepositoryId=snapshots

常用的打包配置项

-D代表(Properties属性)对插件的目标参数进行配置

  1. -Dmaven.test.skip=true 跳过测试
  2. -Dfile.encoding 指定编码格式
  3. -DgroupId
  4. -DartifactId
  5. -Dversion
  6. -Dpackaging 打包类型,pom或者jar
  7. -Dfile 某路径下的pom文件,
  8. -Durl 远程Nexus私服仓库地址
  9. -Dspring.profiles.active=prod 指定springboot的配置文件

--setting 指定settings文件,等同于-s,如果settings文件名为默认的settings.xml,可以省略不写

完整的settings配置

<?xml version="1.0" encoding="UTF-8"?>

<settings xmlns="http://maven.apache.org/SETTINGS/1.2.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.2.0 http://maven.apache.org/xsd/settings-1.2.0.xsd"> <localRepository>D:\apache-maven-3.6.1\repository-nexus</localRepository> <servers>
<!-- 一般,私服仓库的下载和部署是在pom.xml文件中的repositories和distributionManagement元素中定义的,然而,一般类似于用户名,密码等信息不应该在pom.xml文件配置中,这些信息可以配置在setting.xml中 -->
<!-- maven设置私服对应的信息:id、用户、密码,其中,id必须和distrubutionManagement的id相同 -->
<!-- 私域环境maven仓库,为了上传jar或pom到私服仓库 -->
<server>
<id>releases</id>
<username>admin</username>
<password>admin@nexus</password>
</server>
<server>
<id>snapshots</id>
<username>admin</username>
<password>admin@nexus</password>
</server>
</servers> <mirrors>
<!-- 私服和阿里云混用,当nexus私服连接不上,才会走第二个,默认只有一个生效 -->
<!-- id是唯一标识一个mirror,name节点名,url是官方的库地址,mirrorOf代表了一个镜像的替代位置,例如central就表示代替官方的中央库 -->
<!-- 虽然mirrors可以配置多个子节点,但是它只会使用其中的一个节点,即默认情况下配置多个mirror的情况下,只有第一个生效,只有当前一个mirror无法连接的时候,才会去找后一个 -->
<mirror>
<id>fp-nexus</id>
<name>nexus maven</name>
<url>http://192.168.100.99:8082/repository/maven-public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
<mirror>
<id>alimaven</id>
<name>aliyun maven</name>
<url>https://maven.aliyun.com/repository/public/</url>
<mirrorOf>central</mirrorOf>
</mirror>
</mirrors> <profiles>
<profile>
<id>jdk1.8</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.8</jdk>
</activation>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<maven.compiler.source>1.8</maven.compiler.source>
<maven.compiler.target>1.8</maven.compiler.target>
<maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
</properties>
</profile> <profile>
<id>nexus-profile</id>
<repositories>
<repository>
<id>fp-nexus</id> <!--仓库id,repositories可以配置多个仓库,保证id不重复-->
<url>http://192.168.100.99:8082/repository/maven-public/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>nexus</id>
<name>Public Repositories</name>
<url>http://192.168.100.99:8082/repository/maven-public/</url>
</pluginRepository>
</pluginRepositories>
</profile>
</profiles> <!-- 激活配置 -->
<activeProfiles>
<activeProfile>jdk1.8</activeProfile>
<activeProfile>nexus-profile</activeProfile>
</activeProfiles>
</settings>

使用mvn命令将pom和jar上传至nexus私服的更多相关文章

  1. 在pom.xml中使用distributionManagement将项目打包上传到nexus私服

    本文介绍 如何在pom.xml中使用distributionManagement将项目打包上传到nexus私服 1.pom.xml文件添加distributionManagement节点 <!- ...

  2. 第三方jar上传到Maven私服(Nexus)

    mvn deploy:deploy-file -DgroupId=taobao-sdk -DartifactId=taobao-sdk-java -Dversion=1.0 -Dpackaging=j ...

  3. 如何将第三方jar包上传到Nexus私服

    首先登陆私服服务器         以动力威视私服为例:          自己搭建的私服地址:http://192.168.1.5:8081/nexus/index.html#view-reposi ...

  4. 第三方jar上传至公司maven仓库(私库)解决办法

    在实际开发过程中,我们经常会遇到需要引用的jar依赖,在我们公司的maven仓库不存在,这个时候我们就需要把jar上传上去,在项目中添加对应依赖就OK了. 步骤1:下载jar 在http://mvnr ...

  5. 利用windows系统ftp命令编写的BAT文件上传[转]

    利用windows系统ftp命令编写的BAT文件上传[转] 利用windows系统ftp命令编写的BAT文件上传[转] 在开发中往往需要将本地的程序上传到服务器,而且用惯了linux命令的人来说.在w ...

  6. (超详细)使用git命令行将本地仓库代码上传到github或gitlab远程仓库

    (超详细)使用git命令行将本地仓库代码上传到github或gitlab远程仓库 本地创建了一个 xcode 工程项目,现通过 命令行 将该项目上传到 github 或者 gitlab 远程仓库,具体 ...

  7. Maven:将Jar安装到本地仓库和Jar上传到私服

    1.依赖如下: <dependency> <groupId>org.quartz-scheduler.internal</groupId> <artifact ...

  8. Maven : 将Jar安装到本地仓库和Jar上传到私服 转

    http://blog.csdn.net/we_shell/article/details/49819221 Jar的maven配置 <dependency><groupId> ...

  9. 将Jar安装到本地仓库和Jar上传到私服

    举例 1. 依赖如下: <dependency> <groupId>org.quartz-scheduler.internal</groupId> <arti ...

随机推荐

  1. python_request的安装及模拟json的post请求及带参数的get请求

    一.Requests模块安装 安装方式一:执行 pip install -U requests 联网安装requests 安装方式二:进入https://pypi.org/project/reques ...

  2. 面试一次问一次,HashMap是该拿下了(一)

    文章目录 前言 一.HashMap类图 二.源码剖析 1. HashMap(jdk1.7版本) - 此篇详解 2. HashMap(jdk1.8版本) 3. ConcurrentHashMap ~~ ...

  3. NCF 如何导入Excel数据

    简介 学了上一节的WebApi之后,我们会发现一片新天地 本节跟大家聊一聊,如何把本地的Excel数据导入到NCF中 仓库地址:https://github.com/NeuCharFramework/ ...

  4. mysqldump 使用规范

    数据库很重要,没有备份,数据丢失只能跑路.所以还是做好备份吧! 目录 一.工具介绍 二.工具特点 三.备份权限 四.工具使用限制 五.已知BUG 六.备份前注意事项 6.1 需要长时间备份或导入时,请 ...

  5. SpringBoot数据访问(二) SpringBoot整合JPA

    JPA简介 Spring Data JPA是Spring Data大家族的一部分,它可以轻松实现基于JPA的存储库.该模块用于增强支持基于JPA的数据访问层,它使我们可以更加容易地构建使用数据访问技术 ...

  6. Spring Cloud 和 Dubbo,到底用哪个好?

    Spring Cloud是http协议传输,带宽会比较多,同时使用http协议一般会使用JSON报文,消耗会更大 dubbo的开发难度较大,原因是dubbo的jar包依赖问题很多大型工程无法解决 sp ...

  7. 关于DWG文件转换成PDF

    最近有这样一个需求,客户会提供DWG文件,因为DWG文件是不能直接在网页上显示的,所以必须对他做处理,要求是转换成PDF格式.我查了很久的资料,很多都是基于C#和.NET的方法,而且都是说的很模糊,不 ...

  8. ES6学习笔记之函数(一)

    1.函数的默认参数 在ES6 之前,我们不能直接为函数的参数指定默认值,只能采用其他方法.如: function show (num, callback){ num = num || 6; callb ...

  9. 关于 Index '8' specified is out of bounds.

    报类似这样的错误暂时我只发现了两个原因: 1, 数组超出了界线,这个自己多多注意,加判断,在循环的时候看看是不是有结束条件 2, 你需要提交的网页不存在.有可能是因为你没有这个文件.可能是你的文件名错 ...

  10. POJ 1039 直线和线段相交

    题意: 题意很好理解,从左边射过来的光线,最远能经过管道到右边多少距离. 分析: 光线一定经过一个上端点和一个下端点,这一点很容易想到.然后枚举上下端点即可 #include <iostream ...