【问题标题】:Use nuget package without publishing使用 nuget 包而不发布
【发布时间】:2021-10-27 09:37:52
【问题描述】:

我创建了自己的 nuget 包,现在我需要在解决方案中的所有项目中使用它。但我不想在 nuget.org 上发布它。可能可以将它放入我的 .sln 文件旁边的文件夹中? 我已经创建了 nuget.config 文件:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <config>
    <add key="dependencyVersion" value="Highest" />
  </config>
  <packageSources>
    <add key="MySource" value="..\MyPackages" />
  </packageSources>
</configuration>

我的 .csproj 文件如下所示:

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

  <PropertyGroup>
    <TargetFramework>net5.0</TargetFramework>
  </PropertyGroup>

  <ItemGroup>
    <PackageReference Include="MyPackage1234" Version="*" />
  </ItemGroup>

</Project>

但我立即收到此错误: Severity Code Description Project File Line Suppression State Error NU1101 Unable to find package MyPackage1234. No packages exist with this id in source(s): Microsoft Visual Studio Offline Packages, nuget.org

【问题讨论】:

    标签: c# .net-core nuget


    【解决方案1】:

    您可以在您的机器上创建一个文件夹并将其用作本地包的来源。您可以在本地构建它,并将其放在该文件夹中。

    转到工具 --> 选项 --> Nuget,找到可让您控制包源的位,并添加一个指向本地文件夹的新源。

    这将允许您在本地测试您的包,并在本地构建。

    【讨论】:

    • 但是如果我想与团队分享我的项目?最好在 .csproj 文件或 nuget.config 中指定解决方案的文件夹。
    • 关于与团队共享,请根据 Microsoft 文档 Hosting your own NuGet feeds 使用网络文件共享,简而言之,这与 Ian 仅在网络或(如上面的链接中)NuGet 上的建议相同托管产品。
    猜你喜欢
    • 1970-01-01
    • 2019-03-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-12-21
    • 2020-12-26
    • 2020-03-04
    • 1970-01-01
    相关资源
    最近更新 更多