您现在的位置是:首页 >学无止境 >C# 类库打包推送到nuget网站首页学无止境

C# 类库打包推送到nuget

Accpdaiyekun 2023-06-04 08:00:02
简介C# 类库打包推送到nuget

步骤1:注册nuget 账号,可以使用outlook邮箱进行注册

步骤2:建立 apikey

名字自己起,Glob Pattern 填入“*”

 

 步骤3:把程序打包,打包很简单右键vs2022 打包就好

但是注意*.csproj 文件修改,修改目的是为了生成版本等信息,比如你打多个版本,如果同一版本已经存在nuget推送不上去。报:

 .csproj配置如下:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <TargetFramework>net7.0</TargetFramework>
    <ImplicitUsings>enable</ImplicitUsings>
    <Nullable>enable</Nullable>
    <Description>测试项目</Description>
    <Copyright>daiyekun</Copyright>
    <AssemblyVersion>1.2.0.0</AssemblyVersion>
    <FileVersion>1.2.0.0</FileVersion>
    <Version>1.2.0</Version>
    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>
  </PropertyGroup>
  <Import Project="..WooTestNugetuildWooTestNuget.Build.targets"/>
  <Target Name="MyTarget" AfterTargets="CoreCompile">
    <Message Text="测试msbuild" Importance="high"></Message>
    <Message Text="MSBuildProjectDirectory====$(MSBuildProjectDirectory)" Importance="high"></Message>
    <Message Text="MSBuildThisFileDirectory====$(MSBuildThisFileDirectory)" Importance="high"></Message>
  </Target>

  <Target Name="Mymsg" DependsOnTargets="MyTarget" AfterTargets="MyTarget">
    <Message Text="构建完了" Importance="high" />
  </Target>
  

</Project>

主要几个信息:

   <Version>1.2.0</Version>
    <GeneratePackageOnBuild>true</GeneratePackageOnBuild>

其他随意

开始推送步骤:

步骤1:打开命令窗口

当然命令窗口使用的是:

 

步骤2:cd 到你的项目目录

cd /d C: ugetpack

步骤3:设置apikey

nuget setapikey  XXXXXXXXXXXXXXXXXXXX

(这个key 是nuget创建的,然后copy就可以了)

步骤4:创建 空间     -Force覆盖。第一次可以不用 -Force

nuget spec

nuget spec -Force

记住哟:这个产生一个文件 Package.nuspec

 内容如下:

<?xml version="1.0" encoding="utf-8"?>
<package >
  <metadata>
    <id>Package</id>
    <version>1.2.0</version>
    <authors>Administrator</authors>
    <requireLicenseAcceptance>false</requireLicenseAcceptance>
    <license type="expression">MIT</license>
    <!-- <icon>icon.png</icon> -->
    <projectUrl>http://project_url_here_or_delete_this_line/</projectUrl>
    <description>测试当前目录获取位置</description>
    <releaseNotes>Summary of changes made in this release of the package.</releaseNotes>
    <copyright>$copyright$</copyright>
    <tags>Tag1 Tag2</tags>
    <dependencies>
      <group targetFramework=".NETStandard2.1">
        <dependency id="SampleDependency" version="1.2.0" />
      </group>
    </dependencies>
  </metadata>
</package>

通过次内容可以看出。我们是可以修改的。自己看着办

步骤5:推送

nuget push WooTestNuget.1.1.0.nupkg -Source https://www.nuget.org

如果出现以下界面:

 

推送成功以后耐心等待3分钟以上,或者更长时间。就可以想我们引入其他类库一样引入自己nuget包了。

需要注意的是,我们需要在官网下载nuget.exe .并且把它放到某一目录,并且将目录添加到环境变量path.

不然不能识别nuget命令。如果加了path 还是没法识别,请重启电脑。

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。