Maven仓库搭建(二):GitHub、又拍云、七牛云存储
转载自:http://blog.csdn.net/xiao__gui/article/details/52640280
在上一篇博文中,主要介绍了Maven仓库搭建原理,除了Nexus外,随意使用一个HTTP服务器,例如Tomcat或Nginx,都可搭建一个自己的Maven仓库。
无论是用Nexus还是HTTP服务器搭建Maven仓库,总归需要一台服务器,一台服务器需要花钱买和花时间维护,成本比较大。Nexus一般是公司用的比较多,个人不推荐使用。本文就是介绍一些适合个人搭建Maven仓库的方式,相对来说比Nexus更方便、费用更低(基本是免费的)。
GitHub
首先在GitHub上新建一个repository,例如命名为maven-repo,用来当做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命令的话应该会非常熟悉。进入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项目对应的文件HTTP下载URL根目录是:
https://raw.githubusercontent.com/wucao/maven-repo/master/
路径是用户名+GitHub仓库名+分支。
现在Maven仓库已经可以立即使用了:
<repository><id>my-repository</id><url>https://raw.githubusercontent.com/wucao/maven-repo/master</url>
</repository>
七牛云存储
除了GitHub之外,七牛云存储也是一种几乎免费的Maven仓库的方案。七牛提供每月10G流量和10G存储空间,一般来说很够用了。
首先还是需要通过mvn deploy生成所需要上传的文件,步骤和上面GitHub搭建仓库一致,不同的是生成的文件不是上传到GitHub仓库,而是上传到七牛云存储。可以下载使用七牛提供的文件同步工具将目录同步到七牛上,具体使用文档:
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服务器上。
首先根据又拍云文档,拿到FTP服务器的地址、用户名和密码:
http://docs.upyun.com/guide/#ftpftps
地址:v0.ftp.upyun.com
用户名:操作员名/服务名
密码:操作员的密码
然后根据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>操作员名/服务名</username><password>操作员的密码</password></server></servers>...
</settings>
这样直接运行mvn deploy命令,文件就直接上传到又拍云上了,相对七牛云来说方便很多。
Maven仓库搭建(二):GitHub、又拍云、七牛云存储相关推荐
- typora + smss / github / 又拍云 / 七牛云 图床
配置文件如下: {"picBed": {"current": "smms","uploader": "smms ...
- 用多备份将网站数据备份到百度云,七牛云存储,阿里云OSS,亚马逊S3,金山云等云存储服务上
真正运营过网站的人都知道,数据对一个网站来说至关重要,因此,网站数据备份也是日常必做工作.因为误操作,网站被攻击等种种原因都会导致数据丢失,这时,你才会明白"有备无患"的道理.备份 ...
- 在 Laravel 5 中集成七牛云存储实现云存储功能
本扩展包基于https://github.com/qiniu/php-sdk开发,是七牛云储存 Laravel 5 Storage版,通过本扩展包可以在Laravel 5中集成七牛云存储功能. 1.安 ...
- 七牛云存储挂载到阿里云ECS上的目录下,达到扩容磁盘的效果
七牛云存储挂载到阿里云ECS上,达到扩容磁盘的效果 1. 安装环境 yum install automake fuse fuse-devel gcc-c++ git libcurl-devel lib ...
- PbootCms阿里云OSS插件和七牛云存储插件
特别注意事项 URL请填写全地址,如下图是阿里云OSS提供的Bucket域名,请填写完整这个域名. 插件介绍 增加图片上传到七牛云和阿里云OSS,可选择启用. 图片上传.编辑器上传图片均已接入云存储. ...
- 阿里云OSS转移至七牛云存储(详细简洁教程)
阿里云OSS转移至七牛云存储 只需五步,将阿里云OSS的图片转移到七牛云 七牛云官方提供了工具和详细文档,文字比较多也比较详细,下面写一下简洁一点的 第一步:下载数据迁移工具(kodoimport) ...
- thinkphp6.0的第三方扩展包,支持上传阿里云,七牛云
环境要求 1.php >= 7.1 2. thinkphp >= 6.0.0 支持 阿里云 七牛云 腾讯云 安装 第一步: $ composer require thans/thinkph ...
- 图片存储方案-七牛云存储
1.引语 在实际开发中,我们会有很多处理不同功能的服务器.例如: 应用服务器:负责部署我们的应用 数据库服务器:运行我们的数据库 文件服务器:负责存储用户上传文件的服务器 分服务器处理的目的是让服务器 ...
- ueditor与七牛云存储结合
2019独角兽企业重金招聘Python工程师标准>>> 摘要: ueditor与七牛云存储结合,主要是表单api. ueditor上传图片到七牛云存储 ueditor结合七牛传图片 ...
最新文章
- mysql 释放错误连接_JSP连接MySQL后数据库链接释放的错误
- php正则匹配js中变量_PHP正则表达式核心技术 第4节 php查找匹配函数使用心得
- SQLServer存储过程
- 怀旧服湖畔镇服务器位置,《魔兽世界怀旧服》今天再开10组新服 47组服务器免费转服开启...
- CentOS 7 firewall防火墙命令
- postman模拟文件上传接口
- html支持移动端吗,bootstrap支持手机端吗?
- anaconda中自带的qtdesigner做界面
- 应对“反洗钱”,银丰新融反洗钱自主监测系统为机构保驾护航
- AF_INET是什么?
- ORACLE常用数值函数、转换函数、字符串函数【转】
- 决定系数R2;残差平方和SSE;回归平方和SSR总平方和SST;
- 测试开发面试题及面试经验
- 教领导“做事”的新人,后来过得好吗?
- 微信公众号无法长按发送图片,长安反应慢
- Raspberry-Pi-PICO系列--第八篇 高级篇使用SWD接口下载和调试(第一章)
- 受够了百度网盘?如何注册无限容量的Google Drive网盘
- mysql 自动截断_MySql中关于超长自动截断的案例详解
- 计算机和人脑在线阅读,人脑与电脑课件.ppt
- 《MLB美职棒大联盟》:世界大赛最有价值球员奖
热门文章
- 什么叫云服务器_什么叫云计算,云计算是什么,最通俗的解释是这样的
- this.$router.go()和this.$router.push()的区别
- Android: 生成安卓可使用的Tflite文件
- Boost锁~临界区保护和临界资源共享
- android 标准字体,文字规范标准(IOS/Android)
- c语言模板程序,模板模式 (C语言实现)
- 对现代C++的一点看法
- shell重启jar包
- zookeeker如何解决HBase单节点故障
- MySQL多实例实现半同步复制