Hello,各位小伙伴大家好,我是小栈君。好久不见,最近因为工作的缘故,导致了更新变慢,但是小栈君也在积极的做素材的规划,毕竟学习知识点的归纳和提炼需要一定的时间。

所以还请大家多多见谅,下一期的分享主题我们依旧会围绕着go语言系列进行。不过小栈君会尽量加快节奏。因为接下来的挑战是对于最近关乎国家战略有关的区块链。

因为之前有幸参加了相关的一部分项目实战,所以也想对于这一部分做一个简单的教程系列。还请大家敬请期待哦。

闲话不多说,我们今天分享的主题就是最近在项目开发上遇到的一个简单问题总结,就是关于maven私服的上传jar包。因为大家都知道关于java的项目开发经历了换代,小栈君最开始做开发的时候,使用的是最原始的jar包导入。

就是你需要在网上将你项目中所要的jar进行下载,然后放在项目的lib目录下,最后使用eclipse进行build。

这样的坏处就是由于项目过大,或是项目所使用的jar包太多,导致了管理混乱,严重的时候,甚至会影响项目的开发。因为会导致jar冲突,或是项目版本和jar包不符。后面我们就开始使用了maven对项目jar包进行管理。

Maven的介绍

百度百科上对于maven的描述是:maven是可以通过一小段描述信息来管理项目的构建、报告和文档的项目管理工具软件。

它包含了一个项目对象模型 (Project Object Model),一组标准集合,一个项目生命周期(Project Lifecycle),一个依赖管理系统(Dependency Management System),和用来运行定义在生命周期阶段(phase)中插件(plugin)目标(goal)的逻辑。

当你使用Maven的时候,你用一个明确定义的项目对象模型来描述你的项目,然后Maven可以应用横切的逻辑,这些逻辑来自一组共享的(或者自定义的)插件。

Maven 有一个生命周期,当你运行 mvn install 的时候被调用。这条命令告诉 Maven 执行一系列的有序的步骤,直到到达你指定的生命周期。

遍历生命周期旅途中的一个影响就是,Maven 运行了许多默认的插件目标,这些目标完成了像编译和创建一个 JAR 文件这样的工作。

Maven的好处

使用maven的好处当然是有很多的,第一个可以更加方便的管理项目的依赖。

所有的jar包管理上图所示,一目了然,而且版本和注释都可以写清楚,让开发者更加直观、明了的了解到项目所用到的jar包和版本。

其次就是使用maven后可以结合jenkins可以实现一键部署,省去了中间烦恼,想比与之前的本地打包,然后上传服务器,接着备份和停服务,最后重启的繁琐步骤,maven的使用可以算的上真正的为我们开发者节约了不少的时间,提升我们的开发效率。

最后就是在大型项目的开发过程中,特别是现在很火的微服务构建中,利用maven可以最大程度的帮助我们进行模块的划分和复用。有过手动导包开发的小伙伴们更加能够体会到这其中的变化巨大吧。

Maven的安装

Maven的安装可以算的上是非常简单的了,简单来讲的话可以分为三步走 。

第一步进行下载maven,大家可以通过官网进行下载最新的maven包。

最新的记录是3.6.2,在需要jdk 环境的说明中有写到,需要1.7以上的版本,而且官网也提供了编译好的包和源码包供大家下载使用。

第二步就是配置环境变量

其实maven的环境变量非常简单,首先我们看到下载好的maven项目内部是这个样子的。

然后建立一个maven_home

最后在我们的path里添加相应的bin文件路径位置即可。

第三步就是验证 ,使用命令mvn -v 即可

最后提醒大家一点的就是maven的默认仓库是在C盘,如果需要改变的话,只需要修改settings文件的位置即可。

Maven上传到私服

Maven的仓库主要分为三种,第一种就是本地仓库,第二种就是公司私服,第三种就是远程仓库。一般来讲,如果是自己开发,我们只需要使用远程镜像,就可以将远程仓库中的jar包下载到自己的本地仓库。

然后进行使用,但是我们公司有专门的私服。所以我们有时候就需要将某一部分共用代码打成jar放到私服,以便于大家使用。所以小栈君在这里使用三种方式来给大家进行分享。

第一种方式当然是我们最简单的可视化界面 。这个时候我们只需要问一下运维或是管理服务器的人员,给我们私服的一个账号密码和地址即可。

如图所示,我们只需要将我们打好的jar包上传,添加延展性、groupID 、artifactID、版本号然后上传即可。

第二种-通过命令上传

其实网络中有太多的人描述如何上传jar包到私服,但是小栈君试过了,结果显而易见的不得行,当然也不是全部都不行,只是绝大部分不可以。本着负责任的态度。所以小栈君挑选了一个正反例子给大家进行示范,当然有可能只是我不行,也可能是哪一步做错了导致不行。

    mvn deploy:deploy-file -Dfile=文件的位置 -DgroupId=文件groupID  -Dversion=文件的版本号 -Dpackaging=jar -Durl=http://ip地址/nexus/content/repositories/releases -DrepositoryId=releases

然后得到的结果是这样的。

第三种也是命令的形式

这种方式经过小栈君的实测比较可靠(举例说明),命令如下:

    mvn install:install-file -Dfile=D:\\asciidoctorj-pdf-1.5.0-alpha-zh.16.jar -DgroupId=org.asciidoctor -DartifactId=asciidoctorj-pdf -Dversion=1.5.0-alpha-zh.16 -Dpackaging=jar

注意一下:这样做的前提条件是屏蔽掉你所有的镜像

然后执行命令 maven install命令

大功告成,又可以美滋滋的继续编写程序啦~。

好了,今天的分享就到这啦,如果你喜欢我的分享,麻烦你点击一个好看或赞,我是小栈君,不定期分享IT干货,包括但不限于区块链、大数据、Python、go、等系列专题。希望与你共同成长。我们下期再见啦,拜了个拜~ ,欢迎大家关注哦~

本文由博客一文多发平台 OpenWrite 发布!

实测Maven上传jar包到私服的方法归纳相关推荐

  1. maven上传Jar包到私服及从私服下载jar包相关配置

    有关使用Maven常见问题总结(Eclipse中使用Maven.Maven项目部署到tomcat等问题) http://blog.csdn.net/sunitjy/article/details/42 ...

  2. nexus : maven上传jar包到nexus私服后的存放路径以及保存的数据结构

    文章目录 1.美图 2.背景 1.美图 2.背景 因为要上传我的所有仓库的包,希望nexus中已有的包,我不覆盖,没有的添加.所以想批量上传jar.所以想知道这些jar都存放在哪里了? maven上传 ...

  3. maven安装 maven上传jar包到库里面

    maven的安装与配置:http://pansanday.blog.163.com/blog/static/381662802012727103454743/ maven上传jar包到库里面: 将私有 ...

  4. Maven上传jar包到本地仓库

    Maven上传jar包到本地仓库 第一步:配置Maven环境变量 F:\apache-maven-3.5.2\bin 配置到path中 找到要上传的jar包 地址栏输入 cmd mvn install ...

  5. bat批处理-上传jar包至私服

    上传jar至私服.bat 简介: 双击"上传jar至私服.bat",脚本会自动将项目重新打包,并上传至私服地址 批处理脚本: @echo offrem @title: 简化jar上 ...

  6. 上传jar包到私服(仅限于翼支付公司工作流程使用)和涉及的技术总结

    做这件事情的方向:先修改后提升版本--->上传到私服 ---->项目中使用该jar包 1修改 BankPay.java类  在 gateway-bank-api中 2提升版本 修改gate ...

  7. Maven Nexus搭建本地私服 上传jar包或本地项目到私服

    Nexus就是Maven的私服 在日常开发中我们在使用maven时经常会遇到下面的问题 1.一些无法从外部仓库下载的构件,例如内部的项目部署到私服上,以便供其他依赖项目使用. 2. 为了节省带宽和时间 ...

  8. 如何在私服上传jar包

    1.上传jar包到私服,需要先登录帐号 用户名:admin 密码:admin123 2.选择第三方库 3 输入完成后点击Add Artifact 然后点击下方Upload Artifact,如下图所示 ...

  9. maven私服上传jar包

    maven私服上传jar包 登录maven私服 上传jar 登录maven私服 点击Repositories,选择上传到的仓库 3rd party 上传jar 选择Artifact Upload 选择 ...

  10. maven上传jar到私服

    上传jar到nexus私服比较简单,不过不会常操作,经常会过一段时间用一回,因此很容易到用的时候又忘了. 手动上传就是在nexus中选择一个hosted仓库,artifact upload,GAV的方 ...

最新文章

  1. k均值聚类图像分割matlab代码_用K均值聚类法为人类拍摄的首张黑洞照片进行分割...
  2. mysql count 返回0_如何在MySQL中使用COUNT時返回0而不是null
  3. MyBatis架构设计及源代码分析系列(一):MyBatis架构
  4. 从无到有算法养成篇-线性表历练
  5. 9种高性能高可用高并发的技术架构
  6. 如何用命令隐藏文件夹
  7. 【网址收藏】Hadoop3.2.1 【 YARN 】源码分析 : ResourceLocalizationService解析
  8. 打包文档_苏教版小学数学16年级全十二册教案Word文档打包下载
  9. 第十九章 7 Data类
  10. ConnectivityManager ConnectivityService in Android
  11. cbrgen和setdest数据流生成
  12. java 数据结构 迷宫_JAVA数据结构与算法之递归(一)~ 迷宫问题
  13. Qt工作笔记-QTreeWidgetItem中type的基本用法
  14. Python中布尔值是False的所有值
  15. Linux服务器authorized_keys添加公钥后登录仍需要密码
  16. Java EE 导图
  17. react-native Android使用阿里icon font图标
  18. 【容器化部署简介】 基于腾讯云TKE: kubernetes(k8s), github actions, devops
  19. 图解:网络硬件的发展史
  20. 国家自然科学基金 计算机视觉,【科研新成果】我院2019年国家自然科学基金项目取得新突破...

热门文章

  1. GCC:warning:control reaches end of non-void function [-Wreturn-type] 、 Coredump的情况
  2. 2017-2018-2 20179306 《网络攻防技术》第八周作业
  3. 不为环境所动就能成功——职场人士寓言(3)
  4. Python大屏看板最全教程之数据库连接
  5. 4、Android下实现Google街景
  6. 我的世界服务器显示空岛等级,我的世界空岛指令
  7. 智能家居加速落地,景联文科技提供数据采集标注服务
  8. cannot import name '_validate_lengths' from 'numpy.lib.arraypad'
  9. 微信IPAD协议安卓协议DEMO,登录篇#1
  10. python桌面应用_用Python写个Metro风格的桌面程序