摘要:公司一代新人換舊人,每次搭建項目開發環境的時候都要吐槽一下。況且咋還需要發布自己的項目到倉庫,搭建私服勢在必行啊。
需求扯淡
新入職一家公司,公司Java技術這塊起步比較晚,沒有自己成熟的框架,入職后一直忙于基礎框架的搭建,框架搭建好后,領導又催著使用新框架重構現有系統,重構工作完成了差不多的時候,領導又讓去做一個新系統的開發,只好使用程序員必備技能并行開發。
分析新系統的需求時,發現世界不友好了,兩個項目都要依賴基礎框架,但是在用戶權限控制這塊又有一些差別,我要是直接把框架改了又會影響到之前做好的項目,不改又滿足不了新系統的要求,莫非要使用萬能的復制大法,復制一份出去修改,可是這么low的方法我一向都看不上啊,真是進退兩難啊。
如果我把之前的框架發布一個v1.0.0的正式版本,新的需求,在v1.0.1版本上實現,豈不是就搞定了,可是公司目前的環境支持不了這個操作啊,那就自動手動來實現了。
扯了一大堆,下面進入正題,第一步,先搭建maven本地私服,最先使用的是國外的maven倉庫,項目第一次構建竟然花了1個小時,后面改用阿里的maven倉庫,也沒有多大的改善。公司一代新人換舊人,每次搭建項目開發環境的時候都要吐槽一下。況且咋還需要發布自己的項目到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,界面如下,說明已經安裝成功。默認端口是8081可以到conf目錄下的nexus.properties文件中去修改。
右上角有一個“Log In”按鈕,可以登錄,默認用戶名為:admin 密碼:admin123,登錄進去之后,可以修改密碼,點擊“Profile”
點擊Repositories->Configuration可以看到Releases、Snapshots、3rd party、Central這四個,分別用來保存項目組內部的發布版、項目組內部的快照、第三方jar、公共jar。
設置一個用戶,在maven的settings.xml中使用
Maven配置1)修改settings.xml配置文件:
releases deployment ##使用nexus中設置的用戶名和密碼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/
這里的
3) 發布snapshots版本和releases版本到私服上
com.test.deploy deploy 0.0.1-SNAPSHOT jar
發布snapshots版本,進入需要發布的maven項目的目錄,運行mvn deploy命令即可.
發布releases版本,去掉pom.xml中
有了自己的maven私服,總算能夠暫時愉快的敲代碼了,且行且珍惜吶。
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/69417.html
摘要:持續集成正是針對這一類問題的一種軟件開發實踐。持續集成的原則業界普遍認同的持續集成的原則包括需要版本控制軟件保障團隊成員提交的代碼不會導致集成失敗。 第一集 hudson+gradle+git+maven(非必選)持續集成編譯,打包,發布到倉庫集成 前言 什么是持續集成 隨著軟件開發復雜度的不斷提高,團隊開發成員間如何更好地協同工作以確保軟件開發的質量已經慢慢成為開發過程中不可回避的...
摘要:該文章用于概述一個小型持續集成環境的搭建的方案什么是持續集成持續集成作為當今軟件開發實踐,可以簡單理解為團隊開發相對頻繁的集成他們的工作,一般讓每個成員每天至少集成一次,而這回造成每天會有多次的版本發布。 該文章用于概述一個小型持續集成環境的搭建的方案 什么是持續集成? 持續集成作為當今軟件開發實踐,可以簡單理解為團隊開發相對頻繁的集成他們的工作,一般讓每個成員每天至少集成一次,而這回...
摘要:軟件項目的管理就會變得簡單很多。比如說的驅動程序,,在是獲取不到的,就需要手工上傳到里是倉庫組,在里沒有這個概念,是特有的。 什么是Maven Maven是一個采用純Java編寫的開源項目管理工具, Maven采用了一種被稱之為Project Object Model (POM)概念來管理項目,所有的項目配置信息都被定義在一個叫做POM.xml的文件中.. Maven是一款跨平臺的項目...
摘要:項目根目錄項目名項目版本號項目目錄打包的名字二依賴管理概述通過在配置依賴坐標,會自動幫我們下載依賴的構件。關于父模塊的依賴配置注意兩點一般都是通過來配置所有依賴及其版本號,然后子模塊,在自己的文件中聲明依賴即可,不用再指定版本,以確保統一。 一、Maven 1.1 為什么寫Maven 工欲善其事,必先利其器。如今Java相關開發,基本離不開Maven、Gradle、MAT、Hudson...
閱讀 2077·2021-11-23 10:13
閱讀 2788·2021-11-09 09:47
閱讀 2737·2021-09-22 15:08
閱讀 3312·2021-09-03 10:46
閱讀 2229·2019-08-30 15:54
閱讀 908·2019-08-28 18:09
閱讀 2428·2019-08-26 18:26
閱讀 2340·2019-08-26 13:48