热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

08(maven+SSH)网上商城项目实战之使用nexus搭建maven私有服务器

1.nexus介绍是开源的,用该框架架设maven私有服务器2.nexus私服环境搭建把nexus.war包放到tomcat的webapps下面浏览且登录用户名:ad

1.nexus 介绍

    是开源的,用该框架架设maven私有服务器


2.nexus私服环境搭建

    把nexus.war包放到tomcat的webapps下面

    浏览且登录

    用户名:admin

    密码:admin123


3.关于中央仓库注意事项

    地址:目前来说:http:repo1.maven.org/maven2/是正真的maven中央仓库的地址,该地址内置在maven的源码中 其他的都是镜像

    索引:中央仓库带有索引文件以方便用户对其搜索,完整的索引文件大小为60M,索引每周更新一次

    黑名单:如果某个IP地址恶意的下载中央仓库内容,例如全公司100台机器使用一个IP反复下载,这个IP会进入黑名单,因此稍有规模的使用maven时,应该使用Nexus架设私服


为什么要使用nexus私服    

1.开发人员过多,是公司IP地址被记录黑名单,无法下载

2.有些项目组没有外网,不能远程访问仓库地址,只能在局域网搭建nexus服务器,开发人员连接这台服务器



4.nexus仓库 (私有服务器  maven仓库)

    -hosted :宿主仓库,该仓库属于该公司私有的 内部项目的发布仓库

        Hosted代表宿主仓库,用来发布一些第三方不允许的组件,比如oracle驱动、比如商业软件jar包。

        (1)3rd part :第三方依赖的仓库,这个数据通常是由内部人员自行下载之后发布上去

        (2)snapshot:测试版本、镜像版本   发布内部的SNAPSHOT模块的仓库

        (3)release : 发型的版本 内部的模块中release模块的发布仓库

    -proxy:代理仓库   从远程中央仓库中寻找数据的仓库

        Proxy 代表代理远程的仓库,最典型的就是Maven官方中央仓库、JBoss仓库等等。如果构建的Maven项目本地仓库没有依赖包,那么就会去这个代理站点去 下载,那么如果代理站点也没有此依赖包,就回去远程中央仓库下载依赖,这些中央仓库就是proxy。代理站点下载成功后再下载至本机。

    -group: 仓库组    : 虚拟的概念  可以包含其它的仓库  组仓库用来方便我们开发人员进行设置的仓库



5.下载Maven仓库索引 手动下载

 首先将索引下载到本地,下载地址:nexus-maven-repository-index.zip http://download.csdn.net/detail/pk490525/6520295

 解压索引压缩包,将里面内容全部拷贝


关闭当前Nexus私服,打开Nexus目录%Nexus_Home%\sonatype-work\nexus\indexer\central-ctx,首先删除当前目录里所有内容,然后粘贴所下载的索引,最后启动Nexus私服,索引生效。

6.修改Maven配置文件从Nexus下载构件

1) 如果想对操作系统的所有用户统一配置maven,则只需修改maven\conf\setting.xml 文件就可以了,如果只想对用户单独配置maven,只需将conf\setting.xml文件复制到C:\Documents and Settings\Administrator\.m2文件夹下(我这里假设系统装在c盘,用户为Administrator)。


2)  打开setting.xml文件,可以看到如下代码:

  1.  

表示如果不设置localRepository,maven会默认将本地仓库建到/.m2/repository文件夹下。

设置localRepository如下代码所示:F:\myCenterRepository   


7.在POM.xml文件中配置Nexus仓库

在项目的pom文件中添加如下代码:

   

        

            nexus

            my-nexus-repository

            http://127.0.0.1:8088/nexus-2.9.0/content/groups/public/

            

                true

            

            

                false

            

        

    

    

        

            nexus

            my-nexus-repository

            http://127.0.0.1:8088/nexus-2.9.0/content/groups/public/

            

                true

            

            

                false

            

        

    


8.在setting.xml文件中配置Nexus仓库

1)maven提供了profile来配置仓库信息,如下所示:

        

            

          myprofile    

              

                    

                    central                                       

                    http://central                          

                        

                        true    

                        

                        

                        true    

                        

                    

                   

                 

                    

                  central    

                  http://central    

                      

                    true    

                      

                      

                    false    

                      

                    

                

            

      


2) 激活profile

      

        myprofile  

     


3)配置镜像


      

             

         nexus      

         http://127.0.0.1:8088/nexus-2.9.0/content/groups/public/     

         *     

         

       


9 部署构件到Nexus仓库

maven部署

1) 修改pom文件

在pom文件中添加如下配置:

Xml代码  收藏代码

  1.     

  2.            

  3.            my-nexus-releases    

  4.            http://127.0.0.1:7788/nexus/content/repositories/releases/    

  5.            

  6.            

  7.            

  8.            my-nexus-snapshot    

  9.            http://127.0.0.1:7788/nexus/content/repositories/snapshots/    

  10.            

  11.       

 2)在setting.xml文件中添加认证信息:

Xml代码  收藏代码

  1.     

  2.          

  3.       my-nexus-releases    

  4.       admin    

  5.       admin123    

  6.         

  7.         

  8.       my-nexus-snapshot    

  9.       admin    

  10.       admin123    

  11.         

  12.     

 上面的配置中我用的是超级管理员的账户,开发项目中可以改为具有部署构件权限的用户就可以了。

3)执行部署

测试的构件项目信息如下:

Xml代码  收藏代码

  1. com.ez    

  2.   TestJar    

  3.   1.0    

  4.   jar    

  5.   TestJar    

 

从上面的信息中可以看出构件为发布版本,所以部署构件的话会自动部署至releases仓库中。

 


在命令行中执行:mvn clean deploy

如果之前没用执行过该命令,maven会自动到中央仓库中下载部署所需的插件。最后在命令行中看到如下所示就代表构件已经部署成功。



推荐阅读
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • 本文介绍了使用AJAX的POST请求实现数据修改功能的方法。通过ajax-post技术,可以实现在输入某个id后,通过ajax技术调用post.jsp修改具有该id记录的姓名的值。文章还提到了AJAX的概念和作用,以及使用async参数和open()方法的注意事项。同时强调了不推荐使用async=false的情况,并解释了JavaScript等待服务器响应的机制。 ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • 本文详细介绍了SQL日志收缩的方法,包括截断日志和删除不需要的旧日志记录。通过备份日志和使用DBCC SHRINKFILE命令可以实现日志的收缩。同时,还介绍了截断日志的原理和注意事项,包括不能截断事务日志的活动部分和MinLSN的确定方法。通过本文的方法,可以有效减小逻辑日志的大小,提高数据库的性能。 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了使用postman进行接口测试的方法,以测试用户管理模块为例。首先需要下载并安装postman,然后创建基本的请求并填写用户名密码进行登录测试。接下来可以进行用户查询和新增的测试。在新增时,可以进行异常测试,包括用户名超长和输入特殊字符的情况。通过测试发现后台没有对参数长度和特殊字符进行检查和过滤。 ... [详细]
  • javascript  – 概述在Firefox上无法正常工作
    我试图提出一些自定义大纲,以达到一些Web可访问性建议.但我不能用Firefox制作.这就是它在Chrome上的外观:而那个图标实际上是一个锚点.在Firefox上,它只概述了整个 ... [详细]
  • 如何用UE4制作2D游戏文档——计算篇
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了如何用UE4制作2D游戏文档——计算篇相关的知识,希望对你有一定的参考价值。 ... [详细]
  • 本文介绍了Web学习历程记录中关于Tomcat的基本概念和配置。首先解释了Web静态Web资源和动态Web资源的概念,以及C/S架构和B/S架构的区别。然后介绍了常见的Web服务器,包括Weblogic、WebSphere和Tomcat。接着详细讲解了Tomcat的虚拟主机、web应用和虚拟路径映射的概念和配置过程。最后简要介绍了http协议的作用。本文内容详实,适合初学者了解Tomcat的基础知识。 ... [详细]
  • Spring常用注解(绝对经典),全靠这份Java知识点PDF大全
    本文介绍了Spring常用注解和注入bean的注解,包括@Bean、@Autowired、@Inject等,同时提供了一个Java知识点PDF大全的资源链接。其中详细介绍了ColorFactoryBean的使用,以及@Autowired和@Inject的区别和用法。此外,还提到了@Required属性的配置和使用。 ... [详细]
  • LVS实现负载均衡的原理LVS负载均衡负载均衡集群是LoadBalance集群。是一种将网络上的访问流量分布于各个节点,以降低服务器压力,更好的向客户端 ... [详细]
  •     这里使用自己编译的hadoop-2.7.0版本部署在windows上,记得几年前,部署hadoop需要借助于cygwin,还需要开启ssh服务,最近发现,原来不需要借助cy ... [详细]
  • 大坑|左上角_pycharm连接服务器同步写代码(图文详细过程)
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了pycharm连接服务器同步写代码(图文详细过程)相关的知识,希望对你有一定的参考价值。pycharm连接服务 ... [详细]
  • Hadoop2.6.0 + 云centos +伪分布式只谈部署
    3.0.3玩不好,现将2.6.0tar.gz上传到usr,chmod-Rhadoop:hadophadoop-2.6.0,rm掉3.0.32.在etcp ... [详细]
author-avatar
机智的树獭
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有