要将自定义的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. VB 老旧版本维护系列---迷之集合- dataTable

    迷之集合- dataTable '定义一个datatable,并声明一个空对象 Dim data As DataTable = New DataTable() '获取行数 Dim rows As In ...

  2. python-selenium 引入包或者类的清晰写法

    #cording=gbk#一般最上面放系统自带的包或者类import os import time##第二层放第三方下载的包或者类from selenium import webdriverfrom ...

  3. 采用MVC模式创建一个简单的javascript App

    初次翻译,翻译的不好,还请见谅 JavaScript中最好的一部分之一,也可能是最糟糕的. 在HTML文档的头部添加一个开始和结束脚本标记,并在其中引入一些意大利面条式的代码,毫无疑问这是一种过分简单 ...

  4. 【NX二次开发】导入x_t,UF_PS_import_data

    导入x_t,导入XT后要UF_DISP_regenerate_display(); 更新显示 否则不会显示 string strPaths ="D:\\1.x_t"; char s ...

  5. 【模拟8.03】数颜色(vector//主席树)

    才知道vector在插入值后是可以直接修改的... 那就很简单了 用vector的lowerbound这样的二分操作,提前储存每个颜色的位置 发现交换相对位置不变 关于vector的lowerboun ...

  6. Arduino参考手册-函数和变量及电路图

    标题: Arduino参考手册-函数和变量及电路图 作者: 梦幻之心星 sky-seeker@qq.com 标签: [#Arduino,#参考手册,#函数,#变量] 目录: [Arduino] 日期: ...

  7. 玩转html2canvas以及常见问题解决

    前端小伙伴经常会遇到页面截图或者把网页中指定的区域(某个大div)的内容转换成png的图片.这个时候常常会用到html2canvas库来实现,js真的很强大. 我最近也遇到了一个需求,需要把输入的文本 ...

  8. 浅析C++的函数式编程

    前言 Java8在Java中通过lambda表达式.Stream API引入了函数式编程,那么C++中是否也支持函数式编程呢?答案是肯定的.目前关于C++进行函数式编程的语法探究的相关博客.文章并不多 ...

  9. 关于XXE漏洞

    XXE漏洞 0x01.xxe是什么 介绍 XXE 之前,我先来说一下普通的 XML 注入,这个的利用面比较狭窄,如果有的话应该也是逻辑漏洞 1.1xml定义 XML用于标记电子文件使其具有结构性的标记 ...

  10. centos8 安装VNC配置远程连接

    系统信息 [root@centos8 ~]# cat /etc/redhat-release CentOS Linux release 8.1.1911 (Core) [root@centos8 ~] ...