Maven仓库搭建(二):GitHub、又拍云、七牛云存储
轉(zhuǎn)載自:http://blog.csdn.net/xiao__gui/article/details/52640280
在上一篇博文中,主要介紹了Maven倉庫搭建原理,除了Nexus外,隨意使用一個HTTP服務(wù)器,例如Tomcat或Nginx,都可搭建一個自己的Maven倉庫。
無論是用Nexus還是HTTP服務(wù)器搭建Maven倉庫,總歸需要一臺服務(wù)器,一臺服務(wù)器需要花錢買和花時間維護,成本比較大。Nexus一般是公司用的比較多,個人不推薦使用。本文就是介紹一些適合個人搭建Maven倉庫的方式,相對來說比Nexus更方便、費用更低(基本是免費的)。
GitHub
首先在GitHub上新建一個repository,例如命名為maven-repo,用來當(dāng)做Maven倉庫。
再將需要上傳到倉庫的項目用mvn deploy命令生成需要上傳的文件(例如jar、pom、md5、sha1等各種文件)。在該項目的pom.xml中加入:
<distributionManagement><repository><id>file-repository</id><url>file://D:\abc</url></repository> </distributionManagement>配置中url是文件生成的目錄。運行mvn deploy命令,會在D:\abc目錄下生成一個所需要上傳到倉庫的文件:
接下來需要把這些文件上傳到GitHub上,這一步如果會使用Git命令的話應(yīng)該會非常熟悉。進入D:\abc目錄,運行以下命令將文件提交到GitHub:
git init git add -A git commit -m "first commit" git remote add origin https://github.com/wucao/maven-repo.git git push -u origin master此時就可以在GitHub上看到這些文件:
參考我的GitHub個人倉庫:https://github.com/wucao/maven-repo
GitHub項目對應(yīng)的文件HTTP下載URL根目錄是:
https://raw.githubusercontent.com/wucao/maven-repo/master/
路徑是用戶名+GitHub倉庫名+分支。
現(xiàn)在Maven倉庫已經(jīng)可以立即使用了:
<repository><id>my-repository</id><url>https://raw.githubusercontent.com/wucao/maven-repo/master</url> </repository>七牛云存儲
除了GitHub之外,七牛云存儲也是一種幾乎免費的Maven倉庫的方案。七牛提供每月10G流量和10G存儲空間,一般來說很夠用了。
首先還是需要通過mvn deploy生成所需要上傳的文件,步驟和上面GitHub搭建倉庫一致,不同的是生成的文件不是上傳到GitHub倉庫,而是上傳到七牛云存儲??梢韵螺d使用七牛提供的文件同步工具將目錄同步到七牛上,具體使用文檔:
http://developer.qiniu.com/code/v6/tool/qrsync.html
下載完成后將conf.json配置中的文件同步目錄、七牛的bucket、accessKey、secketKey修改為自己的配置:
{"src": "D:\\abc","dest": "qiniu:access_key=<AccessKey>&secret_key=<SecretKey>&bucket=<Bucket>","debug_level": 1 }運行qrsync即可上傳目錄下所有文件到七牛云。
在其他項目中配置七牛云的對外域名,上傳到七牛云的jar包就可以在其他項目中直接使用了:
<repository><id>my-repository</id><url>https://odwnttj09.bkt.clouddn.com/</url> <!-- 這里是七牛云的對外HTTP地址 --> </repository>又拍云
實際上又拍云和七牛云基本是一樣的,這里單獨拉出來介紹,是因為又拍云提供了FTP文件上傳。Maven Deploy插件可以直接在運行mvn deploy命令時將文件上傳到FTP服務(wù)器上。
首先根據(jù)又拍云文檔,拿到FTP服務(wù)器的地址、用戶名和密碼:
http://docs.upyun.com/guide/#ftpftps
地址:v0.ftp.upyun.com
用戶名:操作員名/服務(wù)名
密碼:操作員的密碼
然后根據(jù)Maven Deploy插件的文檔:
https://maven.apache.org/plugins/maven-deploy-plugin/examples/deploy-ftp.html
將以下配置加到pom.xml中:
<project>...<distributionManagement><repository><id>ftp-repository</id><url>ftp://v0.ftp.upyun.com</url></repository></distributionManagement><build><extensions><!-- Enabling the use of FTP --><extension><groupId>org.apache.maven.wagon</groupId><artifactId>wagon-ftp</artifactId><version>2.10</version></extension></extensions></build>... </project>在settings.xml中加入FTP的用戶名和密碼:
<settings>...<servers><server><id>ftp-repository</id><username>操作員名/服務(wù)名</username><password>操作員的密碼</password></server></servers>... </settings>這樣直接運行mvn deploy命令,文件就直接上傳到又拍云上了,相對七牛云來說方便很多。
總結(jié)
以上是生活随笔為你收集整理的Maven仓库搭建(二):GitHub、又拍云、七牛云存储的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Maven仓库搭建(一):一台HTTP服
- 下一篇: 关于Integer大小比较的问题