成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

持續(xù)集成(一):maven私服搭建

RyanHoo / 1554人閱讀

摘要:公司一代新人換舊人,每次搭建項目開發(fā)環(huán)境的時候都要吐槽一下。況且咋還需要發(fā)布自己的項目到倉庫,搭建私服勢在必行啊。

需求扯淡

新入職一家公司,公司Java技術(shù)這塊起步比較晚,沒有自己成熟的框架,入職后一直忙于基礎(chǔ)框架的搭建,框架搭建好后,領(lǐng)導又催著使用新框架重構(gòu)現(xiàn)有系統(tǒng),重構(gòu)工作完成了差不多的時候,領(lǐng)導又讓去做一個新系統(tǒng)的開發(fā),只好使用程序員必備技能并行開發(fā)。

分析新系統(tǒng)的需求時,發(fā)現(xiàn)世界不友好了,兩個項目都要依賴基礎(chǔ)框架,但是在用戶權(quán)限控制這塊又有一些差別,我要是直接把框架改了又會影響到之前做好的項目,不改又滿足不了新系統(tǒng)的要求,莫非要使用萬能的復制大法,復制一份出去修改,可是這么low的方法我一向都看不上啊,真是進退兩難啊。

如果我把之前的框架發(fā)布一個v1.0.0的正式版本,新的需求,在v1.0.1版本上實現(xiàn),豈不是就搞定了,可是公司目前的環(huán)境支持不了這個操作啊,那就自動手動來實現(xiàn)了。

扯了一大堆,下面進入正題,第一步,先搭建maven本地私服,最先使用的是國外的maven倉庫,項目第一次構(gòu)建竟然花了1個小時,后面改用阿里的maven倉庫,也沒有多大的改善。公司一代新人換舊人,每次搭建項目開發(fā)環(huán)境的時候都要吐槽一下。況且咋還需要發(fā)布自己的項目到maven倉庫,搭建maven私服勢在必行啊。

工具準備

jdk1.8 下載地址:http://www.oracle.com/technet...

apache-maven-3.3.9 下載地址:http://maven.apache.org/downl...

nexus2.x 下載、安裝、配置

在瀏覽器輸入下載地址:https://www.sonatype.com/nexu...

點擊紅色框選中的按鈕,選擇你需要下載的版本,我下載的是2.x版本

    [root@9-VLA ~]# cd /usr/local
    [root@9-VLA local]# mkdir nexus
    [root@9-VLA local]# cd nexus
    [root@9-VLA nexus]# ls
    nexus-2.14.8-01-bundle.tar.gz
    [root@9-VLA nexus]# tar xf nexus-2.14.8-01-bundle.tar.gz 
    [root@9-VLA nexus]# ls
    nexus-2.14.8-01  nexus-2.14.8-01-bundle.tar.gz  sonatype-work
    [root@9-VLA nexus]# rm -f nexus-2.14.8-01-bundle.tar.gz 
    [root@9-VLA nexus]# ls
    nexus-2.14.8-01  sonatype-work
    [root@9-VLA nexus]# cd nexus-2.14.8-01/bin
    [root@9-VLA bin]# ls
    jsw  nexus  nexus.bat
    [root@9-VLA bin]# ./nexus
    Usage: ./nexus { console | start | stop | restart | status | dump }
    [root@9-VLA bin]# ./nexus start
    ****************************************
    WARNING - NOT RECOMMENDED TO RUN AS ROOT
    ****************************************
    If you insist running as root, then set the environment variable RUN_AS_USER=root before running this script.
    [root@9-VLA bin]# vi /etc/profile   ##在末尾添加如下:
    export RUN_AS_USER=root
    [root@9-VLA bin]# source /etc/profile
    [root@9-VLA bin]# ./nexus start
    ****************************************
    WARNING - NOT RECOMMENDED TO RUN AS ROOT
    ****************************************
    Starting Nexus OSS...
    Started Nexus OSS.
    [root@9-VLA bin]# 

瀏覽器輸入:http://192.168.66.66:8081/nexus,界面如下,說明已經(jīng)安裝成功。默認端口是8081可以到conf目錄下的nexus.properties文件中去修改。

右上角有一個“Log In”按鈕,可以登錄,默認用戶名為:admin 密碼:admin123,登錄進去之后,可以修改密碼,點擊“Profile”

點擊Repositories->Configuration可以看到Releases、Snapshots、3rd party、Central這四個,分別用來保存項目組內(nèi)部的發(fā)布版、項目組內(nèi)部的快照、第三方j(luò)ar、公共jar。

設(shè)置一個用戶,在maven的settings.xml中使用

Maven配置

1)修改settings.xml配置文件:

  
  
             
  
   
    
        
  
   
    
    
   
    
      
        releases  
        deployment    ##使用nexus中設(shè)置的用戶名和密碼
        deployment  
      
      
        snapshots  
        deployment
        deployment  
        
    
   
    
    
      nexus  
      *  
      http://192.168.66.66:8081/nexus/content/groups/public/
     
    
   
      
      
        nexus  
          
            
            nexus  
            Nexus  
            http://192.168.66.66:8081/nexus/content/groups/public/
            true  
            true  
            
          
          
            
            nexus-osc  
            Nexus osc  
            http://192.168.66.66:8081/nexus/content/groups/public/
            true  
            true  
            
          
      
       
   
    
    nexus  
    
  
   

配置好之后,maven下載jar包都會從私服下載,私服上沒有就會去中央倉庫下載保存到私服上。

2) 修改項目里面的pom.xml文件配置

    
          
        releases
          Nexus Release Repository
          http://192.168.66.66:8081/nexus/content/repositories/releases/    
          
          
        snapshots
        false
        Nexus Snapshot Repository
        http://192.168.66.66:8081/nexus/content/repositories/snapshots/    
          
   

這里的releasessnapshots和要Maven的settings.xml文件中的id對應(yīng)起來,否則在發(fā)布的時候會報401錯誤

3) 發(fā)布snapshots版本和releases版本到私服上

  com.test.deploy
  deploy
  0.0.1-SNAPSHOT
  jar

發(fā)布snapshots版本,進入需要發(fā)布的maven項目的目錄,運行mvn deploy命令即可.

發(fā)布releases版本,去掉pom.xml中0.0.1-SNAPSHOT的-SNAPSHOT,再運行mvn deploy命令即可。

結(jié)尾

有了自己的maven私服,總算能夠暫時愉快的敲代碼了,且行且珍惜吶。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/69417.html

相關(guān)文章

  • hudson +gradle+git+maven(非必選)持續(xù)集成 打包自動化

    摘要:持續(xù)集成正是針對這一類問題的一種軟件開發(fā)實踐。持續(xù)集成的原則業(yè)界普遍認同的持續(xù)集成的原則包括需要版本控制軟件保障團隊成員提交的代碼不會導致集成失敗。 第一集 hudson+gradle+git+maven(非必選)持續(xù)集成編譯,打包,發(fā)布到倉庫集成 前言 什么是持續(xù)集成 隨著軟件開發(fā)復雜度的不斷提高,團隊開發(fā)成員間如何更好地協(xié)同工作以確保軟件開發(fā)的質(zhì)量已經(jīng)慢慢成為開發(fā)過程中不可回避的...

    xietao3 評論0 收藏0
  • DevOps 基于Walle的小型持續(xù)集成實戰(zhàn)()概述

    摘要:該文章用于概述一個小型持續(xù)集成環(huán)境的搭建的方案什么是持續(xù)集成持續(xù)集成作為當今軟件開發(fā)實踐,可以簡單理解為團隊開發(fā)相對頻繁的集成他們的工作,一般讓每個成員每天至少集成一次,而這回造成每天會有多次的版本發(fā)布。 該文章用于概述一個小型持續(xù)集成環(huán)境的搭建的方案 什么是持續(xù)集成? 持續(xù)集成作為當今軟件開發(fā)實踐,可以簡單理解為團隊開發(fā)相對頻繁的集成他們的工作,一般讓每個成員每天至少集成一次,而這回...

    Yangyang 評論0 收藏0
  • Maven就是這么簡單

    摘要:軟件項目的管理就會變得簡單很多。比如說的驅(qū)動程序,,在是獲取不到的,就需要手工上傳到里是倉庫組,在里沒有這個概念,是特有的。 什么是Maven Maven是一個采用純Java編寫的開源項目管理工具, Maven采用了一種被稱之為Project Object Model (POM)概念來管理項目,所有的項目配置信息都被定義在一個叫做POM.xml的文件中.. Maven是一款跨平臺的項目...

    leonardofed 評論0 收藏0
  • Maven 實戰(zhàn)

    摘要:的主要思想是約定優(yōu)于配置。強烈建議遵循以上規(guī)范,避免不必要的麻煩。依賴傳遞依賴范圍除了控制,還會對依賴傳遞產(chǎn)生影響。此外還提供了和來進一步管理依賴,分別稱為可選依賴和排除依賴。 showImg(https://segmentfault.com/img/remote/1460000012363876?w=1240&h=698); Maven 是跨平臺的項目管理工具,主要服務(wù)于基于Java...

    twohappy 評論0 收藏0
  • Maven核心概念和日常實踐

    摘要:項目根目錄項目名項目版本號項目目錄打包的名字二依賴管理概述通過在配置依賴坐標,會自動幫我們下載依賴的構(gòu)件。關(guān)于父模塊的依賴配置注意兩點一般都是通過來配置所有依賴及其版本號,然后子模塊,在自己的文件中聲明依賴即可,不用再指定版本,以確保統(tǒng)一。 一、Maven 1.1 為什么寫Maven 工欲善其事,必先利其器。如今Java相關(guān)開發(fā),基本離不開Maven、Gradle、MAT、Hudson...

    894974231 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<