maven私服nexus之校验和(checksums)

左手的ㄟ右手 2023-07-22 09:17 65阅读 0赞

maven是开源的项目构建工具。

nexus可以用来搭建maven私服。

checksum(校验和):用于校验数据的完整性和准确性。

maven nexus中可以查看构件的Checksums:SHA1 checksum和MD5 checksum。

以spring-jdbc-4.0.0.RELEASE.jar为例说明,其maven dependency如下:

  1. <dependency>
  2. <groupId>org.springframework</groupId>
  3. <artifactId>spring-jdbc</artifactId>
  4. <version>4.0.0.RELEASE</version>
  5. </dependency>

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

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xvbmRh_size_16_color_FFFFFF_t_70

由上图可以看出 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为例说明:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xvbmRh_size_16_color_FFFFFF_t_70 1

由上图可以看出:

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库进行搜索,结果如下图:

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xvbmRh_size_16_color_FFFFFF_t_70 2

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

watermark_type_ZmFuZ3poZW5naGVpdGk_shadow_10_text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2xvbmRh_size_16_color_FFFFFF_t_70 3

(adsbygoogle = window.adsbygoogle || []).push({});

发表评论

表情:
评论列表 (有 0 条评论,65人围观)

还没有评论,来说两句吧...

相关阅读

    相关 MavenNexus详解

          maven的仓库只有两大类:1.本地仓库 2.远程仓库,在远程仓库中又分成了3种:2.1 中央仓库 2.2 私服 2.3 其它公共库。    私服是一种特殊的远程