为Visual C ++创建nuget程序包

时间:2018-07-27 09:37:57

标签: c# c++ nuget package

我在Visual Studio上有一个Visual C ++项目。是否可以在每次构建时自动创建一个Nugget软件包?

例如,我尝试安装OctoPack nuget软件包,它会在构建时创建一个nuget软件包。 这对于我的C#项目而言是完美的,因此它会自动创建nuget包。

但是对于我的Visual C ++,它在安装时产生错误。

Executing script file '<<PROJECT>>\packages\OctoPack.3.6.3\tools\Install.ps1'...
You cannot call a method on a null-valued expression.

At <<PROJECT>>\packages\OctoPack.3.6.3\tools\Install.ps1:15 char:79
+ ... orts | Where-Object { $_.Project.EndsWith($package.Id + '.targets') }
+                           ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (:) [], RuntimeException
    + FullyQualifiedErrorId : InvokeMethodOnNull

您知道如何用C ++创建nuget包吗?尽管Internet上有很好的指南为C#项目创建nuget程序包,以及为您自动执行此操作的nugget程序包,但我找不到Visual C ++的任何东西。

2 个答案:

答案 0 :(得分:0)

如果您使用VS 2017,则只需要打开csproj(右键单击项目以获取属性),然后在“包标识符”下选择“在生成时生成NuGet包”。

答案 1 :(得分:0)

我本人也有同样的问题。我在一个地方没有找到满意的答案。因此,一旦找到答案,我就在这里写了一个广泛的博客,详细介绍了如何做:
https://digitalhouseblog.wordpress.com/2019/08/22/how-to-make-a-nuget-package-for-c/