ITOO4.1之NuGet发布问题

    ITOO4.1开发也有一段时间了,今天开始给成绩分析写接口。接口写好了,需要先用NuGet发布一下,其他模块才可以调用。今天小编就说一下NuGet发布那点儿事。


首先是下载NuGet,注册一个NuGet账号,这个时候会自动得到一个ApiKey。

NuGet下载网址:http://nuget.codeplex.com/downloads/get/669083

NuGet注册网址:https://www.nuget.org/

注册成功之后,会给我们自动生成一个ApiKey

 ITOO4.1之NuGet发布问题_第1张图片

    这个ApiKey可以说是我们使用NuGet的一把钥匙。如上图,我们在登录NuGet之后,点击进入自己的主页,找到我们需要的ApiKey,当然,为了更好的满足用户需求,这个ApiKey还可以点击“Reset”进行ApiKey的重置。

下面开始步入正题,说一下这个NuGet到底如何发布dll文件。

首先,将下载好的NuGet.exe放到和.csproj文件在同一目录下。

然后,打开:开始--VS2012--Visual StudioTools--VS2012开发人员命令提示.

第一步是转到项目文件所在文件夹。

第二步是setApiKey:NuGet setApiKey +注册得到的ApiKey

第三步是设置Properties文件夹下的AssemblyInfo.cs文件中的属性版本等,可以根据自己的需要设置版本信息,保存设置并编译整个项目即可。

 ITOO4.1之NuGet发布问题_第2张图片

第四步是:在命令提示符下,进入.csproj文件所在目录,运行nuget spec 命令,将生成.nuspec文件。

第五步是:在命令提示符下,进入.csproj的文件目录,输入命令生成类库包,以我的为例,命令如下:

Nuget pack ITOO.ExamEvalConfigure.Contracts.csproj

第六步:运行成功后会生成ITOO.ExamEvalConfigure.Contracts.nupkg文件。这个时候需要重新配置一下版本等相关信息。比如:作者、dll描述、版本号信息。

第七步:在命令提示符中输入NuGet push ITOO.ExamEvalConfigure.Contracts.4.1.0.Nupkg。全部编译成功之后会有如下提示:

 ITOO4.1之NuGet发布问题_第3张图片

安装完成之后,打开VS便可以通过NuGet搜索使用发布好的dll文件了。

 

发布过程中遇到的问题—远程服务器返回错误:<403>已禁止

如下图所示:

 

错误分析:

1)根据提示,一个可能是我所用的ApiKey是不可用的 。

2)我使用的ApiKey没有足够的权限去发布我命名的dll文件。

解决方案:

1)一开始我以为自己最初注册的NuGet,它给我的ApiKey是无效的,所以我就要了同伴的ApiKey想过来试试,但是还是提示同样的问题。所以说,这种猜想是不可取的。

2)开始怀疑我的权限问题。因为我是在前人的基础上对dll文件进行的更新。举个例子来说吧,一本书的版权所有者只能有一个人或其合伙人,像是申请专利一样,书名被注册版权之后其他人就不可以再注册了。恰巧,我是在ITOO4.0的基础上对其dll文件进行更新,所以说我不能再用自己的ApiKey重新注册相同名称的dll文件。所以,我的解决方案是,找到之前注册ExamEvalConfigure.Contracts的dll文件使用的ApiKey,用原来注册这个dll文件的ApiKey对dll文件进行更新,这样就可以成功啦。

关于NuGet权限问题,我是通过百度找到了遇到过同样问题的霍霍师姐写的博客解决的。推荐大家看一下:http://blog.csdn.net/huo065000/article/details/45318305

 

总结:

有了NuGet,以后再也不用担心dll文件的发布问题。研究了不到一天,学会了基本的NuGet发布,中间因为NuGet发布时的权限问题,让自己在错误中成长了很多,希望在接下来的学习中对NuGet有更深入的学习和理解。

你可能感兴趣的:(发布)