我正在按照“Create a NuGet package that shows update notifications”中找到的解决方案来获取 nuget 包更新的通知。
但是 init.ps1 脚本执行了两次。
我删除了所有代码,以便在 init.ps1 中只有以下代码。
param($installPath, $toolsPath, $package, $project)
if ($project -eq $null) {
$project = Get-Project
}
Write-Host "Hello, I'm running inside of init.ps1"
当我关闭解决方案并重新打开它时,在输出窗口中,文本出现两次。
我使用的是 VS 2012,NuGet 2.2.31210
我检查了packages.config 文件,我的包只有一个条目。
为什么它运行两次,有什么办法让它只运行一次?
谢谢,
乔
最佳答案
在 init.ps1 脚本中,Get-Project 将返回解决方案中的随机项目,而不是已安装包的特定项目。
使用 $projects = Get-Project -All 获取解决方案中的项目列表,遍历项目并搜索 packages.config 以检查当前项目是否安装了该包。
关于powershell - NuGet init.ps1 执行两次,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/14669518/