之前搭了个maven私服,接下来则要充分利用这个私服的优势上传自己的jar包了。

  我们先在nexus上创建一个用来上传jar包的角色,并通过此角色创建若干帐号用来给开发者上传包。如图是我自己的配置:

 

  在这里面包含4项权限,repository-view代表的是repository的使用权限,add,edit,read即可构成完整的上传权限。通过此role创建若干user:在这里我给我自己创建了一个uploaduser用来上传jar包。

  注:为什么不用admin账户?因为上传jar包并不需要admin权限,而admin用户包含的全部的权限,不仅有repository的view和admin还有许多其他权限,并且在settings中密码明文存储,并不安全,而在我这里创建的用户虽然有edit权限,但是只能操作自定义的jar包,对没有redeploy的仓库依旧没什么卵用。所以相对安全可控。

  之后在.m2/settings中加入两条server:  

    <server>
<id>nexus-snapshot</id>
<username>uploaduser</username>
<password>mima</password>
</server>
<server>
<id>nexus-release</id>
<username>uploaduser</username>
<password>mima</password>
</server>

  注意,id这玩意可以随便起名,但是要记住,因为pom文件需要用到,在这里指定的用户名密码,在pom文件里指定id对应的仓库url,这样可以连接到仓库。

  在需要的jar包内加入如下配置:

<distributionManagement>
<repository>
<!-- 这里的ID要和setting的id一致 -->
<id>nexus-release</id>
<url>http://192.168.xx.xxx:18081/repository/maven-releases/</url>
</repository>
<!--这是打成快照版本的配置 -->
<snapshotRepository>
<id>nexus-snapshot</id>
<url>http://192.168.xx.xxx:18081/repository/maven-snapshots/</url>
</snapshotRepository>

  这里的两个url可以在nexus中点击对应的库直接复制过来,不用自己敲进去。

  如果你需要编译scala工程,在pom中加入:

<plugin>
<groupId>net.alchim31.maven</groupId>
<artifactId>scala-maven-plugin</artifactId>
<version>3.2.2</version>
<executions>
<execution>
<id>compile-scala</id>
<phase>compile</phase>
<goals>
<goal>add-source</goal>
<goal>compile</goal>
</goals>
</execution>
<execution>
<id>test-compile-scala</id>
<phase>test-compile</phase>
<goals>
<goal>add-source</goal>
<goal>testCompile</goal>
</goals>
</execution>
</executions>
<!--
<configuration>
<compilerPlugins>
<compilerPlugin>
<groupId>org.scalamacros</groupId>
<artifactId>paradise_2.11.11</artifactId>
<version>2.1.1</version>
</compilerPlugin>
</compilerPlugins>
</configuration>
-->
</plugin>

  这样就可以了,之后需要确认下本地工程的groupid,artifactid和版本:

 <groupId>guinai</groupId>
 <!-- 古伊奈 -->
<artifactId>guinai</artifactId>
<version>0.0.1</version>

打包上传:

  mvn deploy 完成!

  emmmmm.....

  如果你在eclipse下,右键pom文件->debug as -> maven build->在goals里填deploy,完成!

  然后去nexus3里搜你自己的包吧,可以发现已经上传到release库里了如果是snapshot就在snapshot库里

maven打包并上传到nexus3私服的更多相关文章

  1. maven 打包以及上传

    插件 ------------------------------------------------------------------------------------------------- ...

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

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

  3. 使用mvn命令将pom和jar上传至nexus私服

    要将自定义的jar或者pom上传至nexus私服,需要配置maven的settings文件! 上传至nexus私服配置 1. settings配置 <!-- maven设置私服对应的信息:id. ...

  4. jenkins+svn完整打包并上传到linux服务器上

    因为公司用的是svn版本管理工具并且部署在了windows服务器上,所以测试环使用jenkins需要部署两套环境, 一套是在本地windows服务器,jenkins从svn下载代码完成打包并上传到li ...

  5. 打包新版本上传到AppStore时报错 ERROR ITMS-90034:

    今天打包新版本上传到AppStore时报错 ERROR ITMS-90034:"Missing or invalid signature.The bundle'com.xxx.xxx' at ...

  6. maven jar包上传到服务器

    maven jar包上传到服务器时出现pom文件没有上传上去,致使该jar包再被使用的时候没有依赖,jar包调用出错 解决办法,将pom文件一起deploy上去 mvn deploy:deploy-f ...

  7. Android Studio如何配置CURL指令一键打包apk上传至蒲公英

    Android Studio如何配置CURL指令一键打包apk上传至蒲公英 第一步:在所需要打包的模块build.gradle文件中加入如下代码: android{ buildTypes { //配置 ...

  8. Maven上传构建到私服

    通过Maven发布构建到NEXUS私服上发布构建到私服 --- mvn deployPOM中通过distributionManagement分发本地构建到NEXUS私服上第一步,配置distribut ...

  9. Maven基础配置—上传jar包到私服

    一.配置 在需要上传的工程中的pom.xml文件中加入下面的配置 <distributionManagement> <repository> <id>release ...

随机推荐

  1. 13、vue.js简单入门

    本篇导航: 介绍与安装 vue常用指令 一.介绍与安装 vue是一套构建用户界面的JAVASCRIPT框架.与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用.Vue 的核心库只关注视图层, ...

  2. [LeetCode] Swim in Rising Water 在上升的水中游泳

    On an N x N grid, each square grid[i][j] represents the elevation at that point (i,j). Now rain star ...

  3. jquery常用语句

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  4. 白盒测试实践-day03

    一.任务进展情况 完成了基本的测试过程,下一步整理文档. 二.存在的问题 对于JUnit测试,对测试系统还不是太了解,导致测试脚本无法写. 三.解决方法 熟悉测试系统的结构,上网搜集资料.

  5. python全栈开发 * 线程队列 线程池 协程 * 180731

    一.线程队列 队列:1.Queue 先进先出 自带锁 数据安全 from queue import Queue from multiprocessing import Queue (IPC队列)2.L ...

  6. 第6周Java学习任务

    一.阅读ManagerTest 1.UML图 : 2.e.getSalary()到底是调用Manager类的还是Employee类的getSalary方法? stuff[0]中存的是Manager对象 ...

  7. memcached加固

    Memcached服务安全加固 更新时间:2017-06-30 10:07:49    漏洞描述 Memcached是一套常用的key-value缓存系统,由于它本身没有权限控制模块,所以对公网开放的 ...

  8. kafka手动开启监听

    项目集成spring-kafka,在项目启动后需要做些初始化资源的任务,kafka消费会依赖这些所以需要配置kafka手动启动. 类似这样,设置autoStartup为false 然后代码里面调用这个 ...

  9. 《图解HTTP》读书笔记(一:网络基础TCP/IP)

    好书什么时候开始读都不晚.作为一个测试人员,是一定要掌握一些网络的基础知识的.希望能够边读书边在这里记录笔记,便于加深理解以及日后查阅. 一.TCP/IP协议族 计算机与网络设备要互相通信,双方必须基 ...

  10. Azure架构(一):云计算基础

    云计算的定义 云计算(英语:cloud computing),是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需求提供给使用各种计算终端(桌面电脑.笔记本电脑.平板电脑.手机等) ...