實測Maven上傳jar包到私服的方法歸納

Hello,各位小夥伴大家好,我是小棧君。好久不見,最近因爲工作的緣故,導致了更新變慢,但是小棧君也在積極的做素材的規劃,畢竟學習知識點的歸納和提煉需要一定的時間。

所以還請大家多多見諒,下一期的分享主題我們依舊會圍繞着go語言系列進行。不過小棧君會盡量加快節奏。因爲接下來的挑戰是對於最近關乎國家戰略有關的區塊鏈。

因爲之前有幸參加了相關的一部分項目實戰,所以也想對於這一部分做一個簡單的教程系列。還請大家敬請期待哦。

閒話不多說,我們今天分享的主題就是最近在項目開發上遇到的一個簡單問題總結,就是關於maven私服的上傳jar包。因爲大家都知道關於java的項目開發經歷了換代,小棧君最開始做開發的時候,使用的是最原始的jar包導入。

就是你需要在網上將你項目中所要的jar進行下載,然後放在項目的lib目錄下,最後使用eclipse進行build。

這樣的壞處就是由於項目過大,或是項目所使用的jar包太多,導致了管理混亂,嚴重的時候,甚至會影響項目的開發。因爲會導致jar衝突,或是項目版本和jar包不符。後面我們就開始使用了maven對項目jar包進行管理。

Maven的介紹

file

百度百科上對於maven的描述是:maven是可以通過一小段描述信息來管理項目的構建、報告和文檔的項目管理工具軟件。

它包含了一個項目對象模型 (Project Object Model),一組標準集合,一個項目生命週期(Project Lifecycle),一個依賴管理系統(Dependency Management System),和用來運行定義在生命週期階段(phase)中插件(plugin)目標(goal)的邏輯。

當你使用Maven的時候,你用一個明確定義的項目對象模型來描述你的項目,然後Maven可以應用橫切的邏輯,這些邏輯來自一組共享的(或者自定義的)插件。

Maven 有一個生命週期,當你運行 mvn install 的時候被調用。這條命令告訴 Maven 執行一系列的有序的步驟,直到到達你指定的生命週期。

遍歷生命週期旅途中的一個影響就是,Maven 運行了許多默認的插件目標,這些目標完成了像編譯和創建一個 JAR 文件這樣的工作。

Maven的好處

使用maven的好處當然是有很多的,第一個可以更加方便的管理項目的依賴。

file

所有的jar包管理上圖所示,一目瞭然,而且版本和註釋都可以寫清楚,讓開發者更加直觀、明瞭的瞭解到項目所用到的jar包和版本。

其次就是使用maven後可以結合jenkins可以實現一鍵部署,省去了中間煩惱,想比與之前的本地打包,然後上傳服務器,接着備份和停服務,最後重啓的繁瑣步驟,maven的使用可以算的上真正的爲我們開發者節約了不少的時間,提升我們的開發效率。

最後就是在大型項目的開發過程中,特別是現在很火的微服務構建中,利用maven可以最大程度的幫助我們進行模塊的劃分和複用。有過手動導包開發的小夥伴們更加能夠體會到這其中的變化巨大吧。

Maven的安裝

Maven的安裝可以算的上是非常簡單的了,簡單來講的話可以分爲三步走 。

第一步進行下載maven,大家可以通過官網進行下載最新的maven包。

file

最新的記錄是3.6.2,在需要jdk 環境的說明中有寫到,需要1.7以上的版本,而且官網也提供了編譯好的包和源碼包供大家下載使用。

第二步就是配置環境變量

其實maven的環境變量非常簡單,首先我們看到下載好的maven項目內部是這個樣子的。

file

然後建立一個maven_home

file

最後在我們的path裏添加相應的bin文件路徑位置即可。

file

第三步就是驗證 ,使用命令mvn -v 即可

file

最後提醒大家一點的就是maven的默認倉庫是在C盤,如果需要改變的話,只需要修改settings文件的位置即可。

file

Maven上傳到私服

Maven的倉庫主要分爲三種,第一種就是本地倉庫,第二種就是公司私服,第三種就是遠程倉庫。一般來講,如果是自己開發,我們只需要使用遠程鏡像,就可以將遠程倉庫中的jar包下載到自己的本地倉庫。

然後進行使用,但是我們公司有專門的私服。所以我們有時候就需要將某一部分共用代碼打成jar放到私服,以便於大家使用。所以小棧君在這裏使用三種方式來給大家進行分享。

第一種方式當然是我們最簡單的可視化界面 。這個時候我們只需要問一下運維或是管理服務器的人員,給我們私服的一個賬號密碼和地址即可。

file

如圖所示,我們只需要將我們打好的jar包上傳,添加延展性、groupID 、artifactID、版本號然後上傳即可。

第二種-通過命令上傳

其實網絡中有太多的人描述如何上傳jar包到私服,但是小棧君試過了,結果顯而易見的不得行,當然也不是全部都不行,只是絕大部分不可以。本着負責任的態度。所以小棧君挑選了一個正反例子給大家進行示範,當然有可能只是我不行,也可能是哪一步做錯了導致不行。

    mvn deploy:deploy-file -Dfile=文件的位置 -DgroupId=文件groupID  -Dversion=文件的版本號 -Dpackaging=jar -Durl=http://ip地址/nexus/content/repositories/releases -DrepositoryId=releases

然後得到的結果是這樣的。

file

file

第三種也是命令的形式

這種方式經過小棧君的實測比較可靠(舉例說明),命令如下:

    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

注意一下:這樣做的前提條件是屏蔽掉你所有的鏡像

file

然後執行命令 maven install命令

file

大功告成,又可以美滋滋的繼續編寫程序啦~。

好了,今天的分享就到這啦,如果你喜歡我的分享,麻煩你點擊一個好看或贊,我是小棧君,不定期分享IT乾貨,包括但不限於區塊鏈、大數據、Python、go、等系列專題。希望與你共同成長。我們下期再見啦,拜了個拜~ ,歡迎大家關注哦~

file

本文由博客一文多發平臺 OpenWrite 發佈!

發佈了33 篇原創文章 · 獲贊 7 · 訪問量 7537
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章