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 發布!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/65052.html
標籤:Go
上一篇:請教一下,SPRINGMVC專案,在地址欄輸入某個類名, 沒以指定方法名時,會呼叫該類的什么方法?
下一篇:GO基礎之延時執行
