向Nexus仓库推送/使用各种组件

Posted 咖啡的自由空间

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了向Nexus仓库推送/使用各种组件相关的知识,希望对你有一定的参考价值。

1.Nuget仓库

使用NuGetPackageExplorer打包制作自己的nupkg

https://github.com/NuGetPackageExplorer/NuGetPackageExplorer

 

选择Create

 

点击编辑按钮,根据实际填写

左边部分,可以录入一些包中的基础信息,包括:

包的ID:必须的唯一的ID,格式和C#命名空间规范相同,在你发布包的时候会去验证唯一性。

版本号:必须的三段式的版本号,注意每次发布必须大于上一次的版本号,否则将会被nuget驳回。

标题:非必需的,通常你可以让它和ID保持一致,但是这不是强制的。

作者(s):必须的项目,以逗号分隔作者列表。

拥有者:你可以随便写,但是在发布的时候会被你的nuget帐户名替代。

最低客户端版本:描述这个包限制的最低nuget客户端版本。

iconUrl:一个32*32像素的.png文件地址,作为最终在nuget中显示的图标

描述、标签、许可地址、项目地址,是否强制需要同意许可,这些都一目了然了,不多做介绍。

最后有两项特别重要了;

Dependencies:依赖,这个包是否依赖其它的包,当然你可以把依赖的其他包直接拷贝包含进来,但是这就完全违背了nuget的初衷,如果你所依赖的项目没有nuget包,你可以联系原作者后者帮助打包为nuget包。

Framework Assenbly Reference:这里描述了在安装这个包时会被同时引用的程序集,你可以按照不同的.NET Framework版本区分指定它们。下面给出我自己的包的一个示例:

具体参见:http://docs.nuget.org/docs/reference/nuspec-reference

这边用这个软件自带的publish功能无法发布到nexus3上,使用nuget命令推送:

nuget push C:\\Users\\0122\\Documents\\NugetPackages\\Homsom.Security.1.1702.28.3.nupkg -source http://nexus.hs.com:8081/repository/nuget-hosted

根据提示,输入用户名,密码,上传成功

 

使用方法,打开VS中的包管理器,添加可用包源:

注意这里使用的是group包源,已包含自动代理的nuget官方源。

正常搜索,即得到刚才上传的包,可以随意安装到自己需要的项目中。

 

2.Maven仓库

settings.xml增加server配置

        <server>    
            <id>nexus-releases</id>    
            <username>username</username>    
            <password>password</password>   
          </server>    
          <server>    
            <id>nexus-snapshots</id>    
            <username>username</username>    
            <password>password</password>    
          </server>    

Pom.xml加入

    <distributionManagement>
        <repository>
            <id>nexus-releases</id>
            <name>public</name>
            <url>http://nexus.hs.com:8081/repository/maven-releases/</url>
        </repository>
        <snapshotRepository>
            <id>nexus-snapshots</id>
            <name>Snapshots</name>
            <url>http://nexus.hs.com:8081/repository/maven-snapshots/</url>
        </snapshotRepository>
    </distributionManagement>

执行deploy

即可自动提交到nexus的maven仓库

本项目为多模块项目,导入2个

使用方法:

pom文件中直接加入依赖

        <dependency>
            <groupId>com.homsom</groupId>
            <artifactId>security-hmacsha1</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

 

以上是关于向Nexus仓库推送/使用各种组件的主要内容,如果未能解决你的问题,请参考以下文章

CentOS+Nexus搭建npm私有仓库并推送代码

docker搭建maven私有仓库nexus;推送jar到私有仓库

nexus仓库组件

Maven仓库--Nexus的配置使用

Maven 私服 nexus服务器 -- 仓库分类与手动上传组件

使用Nexus搭建私有Nuget仓库