Hello,各位小夥伴你們好,我是小棧君。很久不見,最近由於工做的緣故,致使了更新變慢,可是小棧君也在積極的作素材的規劃,畢竟學習知識點的概括和提煉須要必定的時間。java
因此還請你們多多見諒,下一期的分享主題咱們依舊會圍繞着go語言系列進行。不太小棧君會盡可能加快節奏。由於接下來的挑戰是對於最近關乎國家戰略有關的區塊鏈。服務器
由於以前有幸參加了相關的一部分項目實戰,因此也想對於這一部分作一個簡單的教程系列。還請你們敬請期待哦。網絡
閒話很少說,咱們今天分享的主題就是最近在項目開發上遇到的一個簡單問題總結,就是關於maven私服的上傳jar包。由於你們都知道關於java的項目開發經歷了換代,小棧君最開始作開發的時候,使用的是最原始的jar包導入。運維
就是你須要在網上將你項目中所要的jar進行下載,而後放在項目的lib目錄下,最後使用eclipse進行build。eclipse
這樣的壞處就是因爲項目過大,或是項目所使用的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的好處固然是有不少的,第一個能夠更加方便的管理項目的依賴。
全部的jar包管理上圖所示,一目瞭然,並且版本和註釋均可以寫清楚,讓開發者更加直觀、明瞭的瞭解到項目所用到的jar包和版本。
其次就是使用maven後能夠結合jenkins能夠實現一鍵部署,省去了中間煩惱,想比與以前的本地打包,而後上傳服務器,接着備份和停服務,最後重啓的繁瑣步驟,maven的使用能夠算的上真正的爲咱們開發者節約了很多的時間,提高咱們的開發效率。
最後就是在大型項目的開發過程當中,特別是如今很火的微服務構建中,利用maven能夠最大程度的幫助咱們進行模塊的劃分和複用。有過手動導包開發的小夥伴們更加可以體會到這其中的變化巨大吧。
Maven的安裝能夠算的上是很是簡單的了,簡單來說的話能夠分爲三步走 。
最新的記錄是3.6.2,在須要jdk 環境的說明中有寫到,須要1.7以上的版本,並且官網也提供了編譯好的包和源碼包供你們下載使用。
其實maven的環境變量很是簡單,首先咱們看到下載好的maven項目內部是這個樣子的。
而後創建一個maven_home
最後在咱們的path裏添加相應的bin文件路徑位置便可。
最後提醒你們一點的就是maven的默認倉庫是在C盤,若是須要改變的話,只須要修改settings文件的位置便可。
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 發佈!