$package 和 $project 参数在 NuGet install.ps1 脚本中包含什么?

What do the $package and $project params contain in a NuGet install.ps1 script?

我正在为 NuGet 包编写我的第一个安装 PowerShell 脚本。我正在尝试将文件从 lib 文件夹复制到另一个 NuGet 包的 tools 文件夹中。默认的 install.ps1 脚本有四个参数,其中两个是:

它们似乎是某种 "objects",但我不确定它们包含哪些属性和方法。我在网上做了一些搜索,但还没有找到这些论点的参考资料或任何文档。

正在查看 , the question contains a link to Project Interface。那是 NuGet 安装中的 $project.ps1 文件吗?

在 NuGet 2 中:

在 NuGet 3 中:

请注意,NuGet 3 中的 $package 可用属性较少,因此现有 NuGet 包中包含的某些 PowerShell 脚本将无法运行。

您始终可以使用 GetType().FullName 查看 PowerShell 变量是哪个 .NET 类型,例如:

Write-Output $project.GetType().FullName
Write-Output $package.GetType().FullName