当前访客身份:游客 [ 登录  | 注册加入尚学堂]
直播

我来了!

拥有积分:4024
尚学堂雄起!!威武。。。

博客分类

笔记中心

课题中心

提问中心

答题中心

解答题中心

maven私服nexus之校验和(checksums)

我来了! 发表于 2年前 (2014-10-13 09:15:25)  |  评论(0)  |  阅读次数(419)| 0 人收藏此文章,   我要收藏   
maven是开源的项目构建工具。
nexus可以用来搭建maven私服。
checksum(校验和):用于校验数据的完整性和准确性。
maven nexus中可以查看构件的Checksums:SHA1 checksum和MD5  checksum。

以spring-jdbc-4.0.0.RELEASE.jar为例说明,其maven dependency如下:
<dependency>
  <groupId>org.springframework</groupId>
  <artifactId>spring-jdbc</artifactId>
  <version>4.0.0.RELEASE</version>
</dependency>

spring-jdbc-4.0.0.RELEASE.jar的Artifact Information如下图:

由上图可以看出 Checksums分别有SHA1和MD5这两种哈希(Hash)加密的校验和(checksum)
SHA1 checksum(40个字符)为: d169c669b85f26f06c5dedb19bfdd169e4e38c3a
MD5  checksum(32个字符)为: 8a5d45e8bf5b05a425fef45069ed5d3c

在linux上,可以通过sha1sum和md5sum命令生成校验和。
以linux服务器的本地maven仓库中spring-jdbc-4.0.0.RELEASE.jar为例说明:

由上图可以看出:

1、spring-jdbc-4.0.0.RELEASE.jar.sha1文件中的值与nexus上的SHA1 checksum一致;
2、对spring-jdbc-4.0.0.RELEASE.jar用md5sum命令获得的MD5  checksum也与nexus上的MD5  checksum一致;
3、对spring-jdbc-4.0.0.RELEASE.jar用sha1sum命令获得的SHA1 checksum也与nexus上的SHA1 checksum一致;
上面每条都证明spring-jdbc-4.0.0.RELEASE.jar是完整并准确的。

maven hosted(宿主)类型仓库常用来部署组织内部的或第三方的构件。
nexus内置的hosted 类型的仓库有:Releases、Snapshots和3rd party:
Releases: 一个策略为Release的宿主类型仓库,用来部署组织内部的发布版本构件;
Snapshots: 一个策略为Snapshot的宿主类型仓库,用来部署组织内部的快照版本构件;
3rd party: 一个策略为Release的宿主类型仓库,用来部署无法从公共仓库获得的第三方发布版本构件。
如果它们的 Deployment Policy设置为Allown Redeploy,则可以覆盖部署构件;
这样,假设重新部署了修改过的构件,则它的checksums也随之发生变化,
可以根据checksums来判断本地maven仓库的缓存是否与maven私服上的构件一致。


此外,maven nexus可用 SHA1 checksum进行搜索:
点击左侧的导航栏的Advanced Search(高级搜索),在下拉框中选择Checksum Search(校验码搜索)
下面通过spring-jdbc-4.0.0.RELEASE.jar.sha1的内容在 开源中国maven库进行搜索,结果如下图:

在maven中央仓库(Central Repository)搜索,结果如下图:



分享到:0
关注微信,跟着我们扩展技术视野。每天推送IT新技术文章,每周聚焦一门新技术。微信二维码如下:
微信公众账号:尚学堂(微信号:bjsxt-java)
北京总部地址:北京市海淀区西三旗桥东建材城西路85号神州科技园B座三层尚学堂 咨询电话:400-009-1906 010-56233821
Copyright 2007-2015 北京尚学堂科技有限公司 京ICP备13018289号-1 京公网安备11010802015183