非mvn项目转为mvn项目并构建mvn私服

一.背景

  公司里的系统是老系统,没有使用mvn,但是现在准备使用持续集成(CI),就要用到mvn,所以现在需要将老项目转为mvn项目,并且非mvn项目也是不好构建和拓展的。

  构建自己的mvn私服,是因为项目里面有一些jar是在中央仓库里面无法下载的,所以我需要在公司的服务器上构建自己的私服仓库,并把这些jar传到私服上。

二.非mvn项目转mvn项目

  1.非mvn和mvn项目最直观的区别当然是pom.xml了,所以现在我们需要在项目上自己创建一个pom文件.

  2.我使用的是idea工具,我直接右键pom文件,add mvn项目即可,其余的事就是工具的事情了.

  3.现在需要把以前的项目的jar全部写在pom文件里面,这里面的水还是比较深的,首先jar就比较多,其次是很多可能你找不到什么的,或者依赖版本的问题,反正这个要花一定的时间。

    当你发现有一部分jar包在mvn中央仓库里面怎么都找不到,你可能要意识到这个jar包可能本来就没有,所以需要我们使用私服来上传自己的jar文件。

三.私服的安装

  1.在网站下载免费版的nexus:https://www.sonatype.com/download-oss-sonatype

  

    根据自己项目需求选择版本2还是版本3,下载成功过后,自己安装。安装成功启动过后就可以在页面上看到下面的信息了:

    

    初始的登录账号/密码是:admin/admin123,端口8080,都是可以在config配置里面自己修改的,这里就不多说了。

 

四.配置项目

  1.修改本地mvn仓库和mvn的settings.xml

  找到你所安装使用的mvn插件,在安装路径里的config里面的settings.xml文件进行修改:

   

<servers>
<!-- server
| Specifies the authentication information to use when connecting to a particular server, identified by
| a unique name within the system (referred to by the 'id' attribute below).
|
| NOTE: You should either specify username/password OR privateKey/passphrase, since these pairings are
| used together.
|
<server>
<id>deploymentRepo</id>
<username>repouser</username>
<password>repopwd</password>
</server>
-->
<server>
<id>central</id>
<username>admin</username>
<password>admin123</password>
</server>
<server>
<id>thirdparty</id>
<username>admin</username>
<password>admin123</password>
</server> <!-- Another sample, using keys to authenticate.
<server>
<id>siteServer</id>
<privateKey>/path/to/private/key</privateKey>
<passphrase>optional; leave empty if not used.</passphrase>
</server>
-->
</servers>

   

<mirrors>
<!-- mirror
| Specifies a repository mirror site to use instead of a given repository. The repository that
| this mirror serves has an ID that matches the mirrorOf element of this mirror. IDs are used
| for inheritance and direct lookup purposes, and must be unique across the set of mirrors.
|
<mirror>
<id>mirrorId</id>
<mirrorOf>repositoryId</mirrorOf>
<name>Human Readable Name for this Mirror.</name>
<url>http://my.repository.com/repo/path</url>
</mirror> -->
<mirror>
<id>nexus-releases</id>
<url>http://192.168.50.191:8081/nexus/content/groups/public/</url>
<mirrorOf>*</mirrorOf>
</mirror>
<mirror>
<id>nexus-snapshots</id>
<url>http://192.168.50.191:8081/nexus/content/groups/public//</url>
<mirrorOf>*</mirrorOf>
</mirror>
</mirrors>

  在pom文件里面添加:

  

    <repositories>
<repository>
<id>central</id>
<name>Central</name>
<url>http://192.168.50.191:8081/nexus/content/repositories/central/</url>
</repository>
<repository>
<id>thirdparty</id>
<name>3rd party</name>
<url>http://192.168.50.191:8081/nexus/content/repositories/thirdparty/</url>
</repository>
</repositories>

五.上传jar包到mvn私服

  这里面有2种方式(命令和页面操作)

  1.页面操作

  

    这个就不用多说了,就是界面点点点

  2.命令上传

    在你的项目pom文件目录,cmd执行上传:

  

mvn deploy:deploy-file -DgroupId=com.fh -DartifactId=servlet-api -Dversion=1.0 -Dpackaging=jar -Dfile=E:\workspace\BPM\WebRoot\WEB-INF\lib\servlet-api.jar -Durl=http://192.168.50.191:8081/nexus/content/repositories/thirdparty/ -DrepositoryId=thirdparty

  mvn私服是公司里面必备的技能之一,可以多多学习下。

非mvn项目转为mvn项目并构建mvn私服的更多相关文章

  1. 将Maven2项目转为MyEclipse项目

    现在项目中,大家开始用jetty.它不用像在MyEclipse中使用Tomcat那样要部署,也不用像在Tomcat中那样,要把应用都放到webapp文件夹下.jetty可以直接用你的项目的目录结构. ...

  2. 普通项目转为maven项目及相关操作说明

    普通项目转为maven项目及相关操作说明 1 原项目简述 如图,一般的项目大致包括三类路径:src,源码路径:test,单元测试路径:lib第三方类包路径. 示例项目中,BaseDao类依赖于mysq ...

  3. 如何把maven项目转为eclipse项目

    如何把maven项目转为eclipse项目,按照如下操作便可. 在cmd窗口, 载cmd窗口进入到maven项目所在目录下,输入如下命令: mvn eclipse:eclipse 这样便可.

  4. Eclipse使用之将Git项目转为Maven项目, ( 注意: 最后没有pom.xml文件的, 要转化下 )

    Eclipse使用之将Git项目转为Maven项目(全图解) 2017年08月11日 09:24:31 阅读数:427 1.打开Eclipse,File->Import 2.Git->Pr ...

  5. 如何用Eclipse将普通的JavaWeb项目转为Maven项目

    最新自己的第一个项目差不多稳定运行之后 想着将项目转为Maven项目.于是参考网上成功的将自己的普通的项目转为了maven项目,现在记录一下: 0.普通的java项目的结构如下: 1.接下来开始进行正 ...

  6. 一般项目转为Maven项目所遇到的问题

    最近搞CI,准备使用Maven,但以前的项目不是Maven项目,需要把项目转换为Maven项目.这遇到几个小问题,一是jar包的依赖,二是从本地仓库取出依赖jar包. 由于没有本地仓库,要手动添加ja ...

  7. web项目转为maven项目

    声明一下项目本来就是maven项目,只是刚开始部署的时候转为maven项目!!! 2.查看POM文件 3.导入依赖jar包(编译,运行,打包) 4. 注意项目为Maven+java 加载jar包小技巧

  8. 从myeclipse导入eclipse,不能识别为web项目(java项目转为web项目)

    1.进入项目目录,找到.project文件,打开. 2.找到<natures>...</natures>代码段. 3.在第2步的代码段中加入如下标签内容并保存:         ...

  9. Maven可以使用mvn package指令对项目进行打包,如果使用Java -jar xxx.java

    Maven可以使用mvn package指令对项目进行打包,如果使用Java -jar xxx.jar执行运行jar文件,会出现"no main manifest attribute, in ...

随机推荐

  1. vb.net 多线程爬虫抓取免费代理IP

    Class Program Public Shared masterPorxyList As List(Of proxy) = New List(Of proxy)() Public Class pr ...

  2. 使用order by和group by的分析

    mysql 写sql的顺序:         select -> from-> where->group by->having->order by.  但mysql的解析 ...

  3. 费劲周折的Haskell开发环境搭建过程

    大概倒腾了一周才搭建好Haskell的开发环境,遇到了很多莫名其妙的问题. 首先,Haskell实在是够冷门,中文网站上的信息实在有限.仅有的一些安装教程分享都感觉不大靠谱,所以我还是直接去外网找吧. ...

  4. centos7 配置nginx vim语法高亮

    看了Nginx核心知识100讲,按照他的做法,没有配置成功,可以使用下面的方法: 下载nginx源码,http://nginx.org/en/download.html 这里下载的是:nginx-1. ...

  5. Exif认识

    找到一个js获取Exif的信息.php的也很简单.打开扩展就可以直接读了.也支持url的 这个是js的 http://code.ciaoca.com/javascript/exif-js/ EXIF ...

  6. 【转载】C#的ArrayList使用Contains方法判断是否包含某个元素

    在C#的编程开发中,ArrayList集合是一个常用的非泛型类集合,在ArrayList集合中可以使用Contains方法判断是否包含某个元素数据,如果包含则返回true,否则返回false,Cont ...

  7. python3高阶函数

    高阶函数英文叫Higher-order function. 变量可以指向函数 以Python内置的求绝对值的函数abs()为例,调用该函数用以下代码: >>> abs(-10) 10 ...

  8. Spark实现分组TopN

    一.概述 在许多数据中,都存在类别的数据,在一些功能中需要根据类别分别获取前几或后几的数据,用于数据可视化或异常数据预警.在这种情况下,实现分组TopN就显得非常重要了,因此,使用了Spark聚合函数 ...

  9. 【学习笔记】PYTHON数据分析与展示(北理工 嵩天)

    0 数据分析之前奏 课程主要内容:常用IDE:本课程主要使用:Anaconda Anaconda:一个集合,包括conda.某版本Python.一批第三方库等 -支持近800个第三方库 -适合科学计算 ...

  10. jmeter+jenkins配置过程

    目录 前置条件 脚本规划 讲解非GUI方式运行脚本 在jenkins里面新建项目 在Jmeter的jtl结果文件转换成html页面 邮件.配置 前置条件 1.jmeter安装好并已配置好环境变量,可正 ...