如何在NuGet中从install.ps1输出调试消息

Joe*_*Fan 10 powershell nuget

我正在开发一个NuGet包,包括install.ps1在包安装期间运行的脚本.我希望能够从我的脚本输出消息,并.bat从我的sript中输出运行文件的结果.

这是我的install.ps1:

param($installPath, $toolsPath, $package, $project)
Write-Output "Running install.ps1 for MyPkg"
Set-Location $toolsPath
.\helper.bat | Write-Output
Run Code Online (Sandbox Code Playgroud)

当我在Visual Studio中安装我的包时,我查看页面中的Package Manager选项Output,我看到:

Executing script file 'C:\Test\packages\MyPkg.1\tools\install.ps1'.
Run Code Online (Sandbox Code Playgroud)

似乎脚本正在工作(我可以告诉其他方式helper.bat运行),但我没有看到任何输出.如何使输出正常工作?

Ale*_*ion 18

从NuGet Package Manager对话框安装时我无法获得输出,稍后我会稍后看看它的发展方向.

但是,从Nuget控制台(工具 - >库包管理器 - >包管理器控制台)安装时,您应该能够看到它.输出直接在控制台中.示例:

PM> uninstall-package samplepackage
hello from unninstal.ps1
Successfully removed 'samplepackage 1.0.0' from WebApplication24.
Run Code Online (Sandbox Code Playgroud)

unninstal.ps1:

param($installPath, $toolsPath, $package, $project)
Write-Host "hello from unninstal.ps1"
Run Code Online (Sandbox Code Playgroud)