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>