如何使用nuget包部署PS1脚本

时间:2019-07-01 07:21:59

标签: nuget nuspec

我有一个PS1脚本,可以在所有项目中使用它们对组件进行签名。到目前为止,我已将此文件复制到我的所有项目中。现在,我想用PS1文件创建一个nuget包。

我创建了一个nuspec文件,并将其放在“内容”中。不幸的是,什么都没有发生。然后,我尝试将其放入lib中。仍然注意到发生了。在我的项目中还原软件包时,在此项目中没有创建文件。

当我使用7-Zip分析nupkg文件时,该文件看起来还可以。 ps1文件分别位于内容lib中。

我没有在网上找到与此主题相关的任何内容。有人可以向我解释如何创建这样的NuGet包吗?

1 个答案:

答案 0 :(得分:1)

使用packages.config的项目安装NuGet软件包时,该软件包的tools\install.ps1脚本将运行。但是,this no longer happens when the project using the package uses PackageReference(例如.NET Core使用的SDK样式项目)。

类似地,content的{​​{1}}文件夹中的文件在安装时被复制到项目中,但是复制到only when the project uses packages.config中。 nupkg项目使用PackageReference中的contentFiles文件夹,但是行为有所不同。这些文件仅在.NET Framework项目的构建而不是安装时复制,而在.NET Core项目的发布中复制。可能不是您想要的程序集签名。

您可能要使用的功能是including MSBuild props and targets in your package。请注意,nupkgprops文件名必须与软件包ID完全匹配,NuGet才能使用它们。您可能想在猜测中使用targets

相关问题