【发布时间】:2021-09-19 00:18:53
【问题描述】:
我有一个面向 .NET Standard 2.0 的 .NET 项目。编译后,此项目会在./bin/Debug/netstandard2.0 目录中生成一个程序集。我想将此程序集打包到 NuGet 包中。但是,我确实不想要包含源代码。为了尝试做到这一点,我目前正在从命令行运行以下命令:
dotnet build MyProject.csproj
dotnet pack --configuration Debug MyProject.csproj
dotnet nuget push bin/Debug/MyProject.1.0.0.nupkg --source https://nuget.pkg.github.com/my-organization --api-key [personal-access-token] --skip-duplicate --no-symbols true
上面列出的命令成功地将 NuGet 包发布到我的包注册表。我也可以通过 Visual Studio 成功安装这个包。但是,当我尝试编译代码时,我收到一个错误,提示找不到包中的命名空间。我可以在 Visual Studio 的“依赖项/包”节点下看到列出的包。但是,我不能(或不知道如何)探索其中实际存在哪些名称空间。但是,当我右键单击它并选择“在文件资源管理器中打开文件夹”时,我看到了源代码。我还看到了一个 *.nupkg 文件、一个 *.nupkg.sha512 文件和一个 .nupkg.metadata 文件。
我的问题是,如何发布我的 NuGet 包以使源代码不包含在内?
【问题讨论】:
标签: visual-studio nuget