1. 配置私服账户密码

在maven 的setting.xml 中配置用户名和密码:

<servers>
<server>
<username>deployment</username>
<password>deploy123</password>
<id>nexus-release</id>
</server>
<server>
<username>deployment</username>
<password>deploy123</password>
<id>nexus-snapshots</id>
</server>
</servers>

2. 配置项目pom.xml

如果有parent 只需在parent 中的pom.xml 中配置,没有则在本项目的pom.xml 配置即可

<distributionManagement>
<repository>
<id>nexus-release</id>
<url>http://192.168.0.247/nexus/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>nexus-snapshots</id>
<url>http://192.168.0.247/nexus/content/repositories/snapshots/</url>
</snapshotRepository>
</distributionManagement> <build>
<plugins>
<!-- 生成sources源码包的插件 -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId>
<version>2.4</version>
<configuration>
<attach>true</attach>
</configuration>
<executions>
<execution>
<id>attach-sources</id>
<!--意思是在什么阶段打包源文件-->
<phase>package</phase>
<goals>
<goal>jar-no-fork</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>

上面的id【nexus-releasenexus-snapshots】和pom.xml 中对应distributionManagement-> repository 的ID ,用户名和密码需要在nexus 中配置,这里定义了两个Repository,可以根据项目的version后缀自动选择发布到哪一个仓库,例如version是0.0.1-SNAPSHOT,则会发布到snapshotRepository里,具体可以观察打包的maven日志。

3. 执行打包发布命令

  • 执行 maven命令,mvn clean package,执行完成后就会生成相应的jar包文件
  • 如果你还需要发布到自己的私服,那么就再执行一条命令:mvn deploy就可以发布到你自己的私服上了,这样同项目组的人员就可以查看你的项目的源码和文档了!
  • 执行 mvn install,maven会自动将source install到repository 。
  • 执行 mvn deploy –Dmaven.test.skip=true,maven会自动将source deploy到remote-repository 。

4. 手动打包发布

在jar包仓库目录下执行以下命令:

mvn deploy:deploy-file -DgroupId=[0] -DartifactId=[1] -Dversion=[2] -Dpackaging=jar -Dfile=[3] -Durl=[4] -DrepositoryId=[5] -DpomFile=[6]
  • [0] : groupId
  • [1] : artifactId
  • [2] : version
  • [3] : jar包名称
  • [4] : 仓库地址
  • [5] : 仓库ID,这里和setting.xml 中配置的serverId对应
  • [6] : pom名称

例如:

mvn deploy:deploy-file -DgroupId=com.alipay.sdk -DartifactId=alipay-sdk-java -Dversion=4.1.17.ALL -Dpackaging=jar -Dfile=alipay-sdk-java-4.17.9.ALL.jar -Durl=http://172.16.1.22:8081/nexus/content/repositories/snapshots -DrepositoryId=Snapshots -DpomFile=alipay-sdk-java-4.17.9.ALL.pom

将maven项目打包上传到私服的更多相关文章

  1. 如何将maven项目打包上传到私服

    比如我们想要把项目通过maven生产源码包和文档包并发布到自己的私服上,有两个maven插件可以做到这些工作,一个是maven-source-plugin,另一个是maven-javadoc-plug ...

  2. Maven 自动打包上传到私服 Nexus

    转载于:http://blog.csdn.net/jerome_s/article/details/54410178           Maven获取jar的默认顺序是         

  3. IDEA maven 项目如何上传到私服仓库

    前言:idea maven 发布版本到私服(快照和正式版).我有个项目( jar 包源码),其他 maven 项目能直接引入依赖就最好了,所以必须将这个 jar 包源码发布到 maven 私服仓库里去 ...

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

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

  5. 修改jar包内容并打包上传到私服

    第一步:拉下git分支中代码,进行修改,修改后commit——>push 第二步:在IDEA中Terminal中执行命令进行打包到本地mvn clean package 第三步:上传到私服,方法 ...

  6. maven自动打包上传nexus仓库配置

    一个基础类,可能要升级并放到私服库里,为了方便,应该能够自动打包放到nexus.这就需要配置maven一些参数与pom.xml. 依次在settings.xml文件裡輸入 <!-- nexus帳 ...

  7. Eclipse搭建Maven项目并上传SVN备份

    本文出自:http://www.cnblogs.com/2186009311CFF/p/7226127.html 背景:近段时间在学着Java,想着用Java做BS的项目.但是项目一遇到问题又要重做, ...

  8. 【转】iOS10项目打包上传被拒关于隐私权限问题

    原文网址:http://blog.csdn.net/yidu_blog/article/details/53064987 今天项目打包提交.收到了苹果的邮件.主要内容: This app attemp ...

  9. 个人开源项目如何上传maven中央仓库

    最近在写一些开源项目,想把自己写的东西放到maven中央仓库,提供给更多的人使用.所以写这一篇文章,记录一下自研开源项目jar包上传同步maven中央仓库成功的整个过程,这其中还是有不少的坑的. 目录 ...

  10. idea下maven项目打包

    近使用idea运行maven需要打包上传tomcat服务器.但是网上一直零零碎碎的....自己记录一下.以防后面忘记 1.idea中.file →Project Structure(快捷键Ctrl+S ...

随机推荐

  1. 2024SHCTF--Crypto--Week1&Week2--WP

    2024SHCTF 注:针对2024SHCTF赛事,写下自己的解题思路以及个别赛题赛后复现对于题目而产生的理解. Week1 d_known task: from Crypto.Util.number ...

  2. 遗传算法+强化学习—TPG—Emergent Tangled Graph Representations for Atari Game Playing Agents

    最近在看进化算法在强化学习(RL)领域的一些应用,有些论文中将使用进化算法解决强化学习问题的算法归为非强化学习算法,然而又有些论文把使用进化算法解决强化学习问题的算法归为强化学习算法,不过更多的论文是 ...

  3. CUDA编程学习 (4)——thread执行效率

    1. Warp 和 SIMD 硬件 1.1 作为调度单位的 Warp 每个 block 分为 32-thread warp 在 CUDA 编程模型中,虽然 warp 不是显式编程的一部分,但在硬件实现 ...

  4. 管理 Python 环境和依赖关系的工具 venv、virtualenv、pipenv 、poetry 、 miniforge 和 anaconda 的区别

    管理 Python 环境和依赖关系的工具 venv.virtualenv.pipenv .poetry . miniforge 和 anaconda 的区别 venv.virtualenv.pipen ...

  5. string,字符串使用指南

    string 创建 创建一个字符串或者字符串数组如下 用 cin 输入,可以读一整串字符直到空格或换行才结束 #include <iostream> using namespace std ...

  6. Nuxt.js 应用中的 vite:compiled 事件钩子

    title: Nuxt.js 应用中的 vite:compiled 事件钩子 date: 2024/11/19 updated: 2024/11/19 author: cmdragon excerpt ...

  7. Abp Vnext 中如何统一接口返回值

    ABP Vnext Vue 的实现 https://github.com/WangJunZzz/abp-vnext-pro 在使用 abp 的过程中,如果提供给第三方接口要实现返回值统一需要怎么做? ...

  8. Gunicorn 部署 Flask-Apscheduler 重复执行问题

    目录 踩坑一:TimeZone offset does not match system offset 踩坑二:Flask-Apscheduler 多进程环境重复运行 踩坑三:集群环境下,Flask- ...

  9. element-ui table 实现表格展开行每次只能展开一行

    1.table 部分 :row-key='getRowKeys':expand-row-keys="expands"@expand-change="expandSelec ...

  10. 二、STM32F103C8T6-定时器

    STM32F103C8T6 定时器概述 STM32F103C8T6 作为一款广泛使用的微控制器,内置多个定时器,能够支持多种计时和控制功能,如精确延时.脉冲宽度调制(PWM).捕获比较(Capture ...