向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:Users122DocumentsNugetPackagesHomsom.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>
原文地址:https://www.cnblogs.com/shown1985/p/6491030.html