Maven學習總結(37)——利用GitHub或阿里雲OSS物件儲存、又拍雲、七牛雲端儲存等搭建個人Maven倉庫
無論是用Nexus還是HTTP伺服器搭建Maven倉庫,總歸需要一臺伺服器,一臺伺服器需要花錢買和花時間維護,成本比較大。Nexus一般是公司用的比較多,個人不推薦使用。本文就是介紹一些適合個人搭建Maven倉庫的方式,相對來說比Nexus更方便、費用更低(基本是免費的)。
GitHub
首先在GitHub上新建一個repository,例如命名為maven-repo,用來當做Maven倉庫。
再將需要上傳到倉庫的專案用mvn
deploy命令生成需要上傳的檔案(例如jar、pom、md5、sha1等各種檔案)。在該專案的pom.xml中加入:
1
|
<distributionManagement
|
配置中url是檔案生成的目錄。執行mvn
deploy命令,會在D:\abc目錄下生成一個所需要上傳到倉庫的檔案:
接下來需要把這些檔案上傳到GitHub上,這一步如果會使用git命令的話應該會非常熟悉。進入D:\abc目錄,執行以下命令將檔案提交到GitHub:
1
|
git init
|
現在Maven倉庫已經可以立即使用了:
1
|
<repository>
|
例如在pom.xml中加上:
1
|
<dependency>
|
七牛雲端儲存
除了GitHub之外,七牛雲端儲存也是一種幾乎免費的Maven倉庫的方案。七牛提供每月10G流量和10G儲存空間,一般來說很夠用了。
首先還是需要通過mvn
deploy生成所需要上傳的檔案,步驟和上面GitHub搭建倉庫一致,不同的是生成的檔案不是上傳到GitHub倉庫,而是上傳到七牛雲端儲存。可以下載使用七牛提供的檔案同步工具將目錄同步到七牛上,具體使用文件:
http://developer.qiniu.com/code/v6/tool/qrsync.html
下載完成後將conf.json配置中的檔案同步目錄、七牛的bucket、accessKey、secketKey修改為自己的配置:
1
|
{
|
執行qrsync即可上傳目錄下所有檔案到七牛雲。
在其他專案中配置七牛雲的對外域名,上傳到七牛雲的jar包就可以在其他專案中直接使用了:
1
|
<repository>
|
除了七牛之外,阿里雲物件儲存OSS、騰訊雲物件儲存服務COS等也都是不錯的選擇,原理和七牛類似。
又拍雲
又拍雲和七牛雲原理差不多,這裡單獨拉出來介紹,是因為又拍雲提供了FTP檔案上傳。Maven Deploy外掛可以直接在執行mvn deploy命令時將檔案上傳到FTP伺服器上。
首先根據又拍雲文件,拿到FTP伺服器的地址、使用者名稱和密碼:
http://docs.upyun.com/guide/#ftpftps
地址:v0.ftp.upyun.com
使用者名稱:操作員名/服務名
密碼:操作員的密碼
將以下配置加到pom.xml中:
1
|
<project>
|
在settings.xml中加入FTP的使用者名稱和密碼:
1
|
<settings>
|
這樣直接執行mvn deploy命令,檔案就直接上傳到又拍雲上了,相對七牛雲來說方便很多。