我正在为 NuGet 包编写第一个安装 PowerShell 脚本。我正在尝试从以下位置复制文件lib
文件夹放入tools
另一个 NuGet 包的文件夹。默认的 install.ps1 脚本有四个参数,其中两个是:
它们似乎是某种“对象”,但我不确定它们包含哪些属性和方法。我已经在网上进行了一些搜索,但尚未找到这些参数的参考或任何文档。
看着这个 StackOverflow 帖子 https://stackoverflow.com/questions/28206118/getting-all-project-kinds-in-a-install-ps1-nuget-script,问题包含一个链接项目界面 https://msdn.microsoft.com/en-us/library/envdte.project%28v=vs.120%29.aspx。是这样吗$project
位于 NuGet install.ps1 文件中?
在 NuGet 2 中:
- $项目=>环境DTE项目 https://msdn.microsoft.com/en-us/library/envdte.project.aspx- 这是项目的 Visual Studio 对象模型。
- $包=>NuGet.IPackage https://github.com/NuGet/NuGet2/blob/d9e597f7164fd776a0b3162c653afce4cc7c70d3/src/Core/Packages/IPackage.cs- NuGet 包。
在 NuGet 3 中:
- $project => EnvDTE.Project
- $包=>脚本包 https://github.com/NuGetArchive/NuGet.VisualStudioExtension/blob/f4e0f33079d5e0c3104b5bd186ceb50048bae7c8/src/PackageManagement.VisualStudio/ScriptPackage.cs
请注意,NuGet 3 中的 $package 的可用属性较少,因此现有 NuGet 包中包含的某些 PowerShell 脚本将无法工作。
您始终可以使用以下命令查看 PowerShell 变量的 .NET 类型GetType().FullName
, e.g.:
Write-Output $project.GetType().FullName
Write-Output $package.GetType().FullName
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)