2017-03-16 116 views
3

我目前在Visual Studio代码中使用0.10.0版本的PowerShell扩展。它曾经是运行空间在脚本的每次运行之间重置,所以如果对模块进行了更改,则更新后的模块将被导入到脚本中。如何重置Visual Studio代码中的PowerShell运行空间代码

但是,由于某些原因,PowerShell运行空间不再被重置,因此在下次运行时模块的更改不会被拾取。

PowerShell扩展中是否有一个设置可确保在每次脚本运行之间重置运行空间?

回答

1

设置powershell.debugging.createTemporaryIntegratedConsole现在可用于Visual Studio代码的PowerShell插件解决了我的问题。

该设置默认为false,因此必须先启用该设置才能使用。

当它设置为true时,每次尝试通过脚本进行调试时都会重置PowerShell会话。这意味着:

  • 常数变量,可以重设
  • 更新PowerShell模块将被拉入会议

它可以通过添加以下行用户设置JSON文件

启用
"powershell.debugging.createTemporaryIntegratedConsole": true 
1

我还没有很好的回答,但这是我在开发过程中减轻了这个问题。

我注意到VS Code正在缓存每次运行之间的变量,并且它有效地运行了脚本,就好像它是REPL一样。

由于PowerShell的范围的性质,可以在Invoke-Command -ScriptBlock {}包装你的代码和变量是不是他们的脚本块的外部访问,你可以不用担心在VS代码留下对象重新运行代码。