我目前在Visual Studio代碼中使用0.10.0版本的PowerShell擴展。它曾經是運行空間在腳本的每次運行之間重置,所以如果對模塊進行了更改,則更新後的模塊將被導入到腳本中。如何重置Visual Studio代碼中的PowerShell運行空間代碼
但是,由於某些原因,PowerShell運行空間不再被重置,因此在下次運行時模塊的更改不會被拾取。
PowerShell擴展中是否有一個設置可確保在每次腳本運行之間重置運行空間?
我目前在Visual Studio代碼中使用0.10.0版本的PowerShell擴展。它曾經是運行空間在腳本的每次運行之間重置,所以如果對模塊進行了更改,則更新後的模塊將被導入到腳本中。如何重置Visual Studio代碼中的PowerShell運行空間代碼
但是,由於某些原因,PowerShell運行空間不再被重置,因此在下次運行時模塊的更改不會被拾取。
PowerShell擴展中是否有一個設置可確保在每次腳本運行之間重置運行空間?
設置powershell.debugging.createTemporaryIntegratedConsole
現在可用於Visual Studio代碼的PowerShell插件解決了我的問題。
該設置默認爲false,因此必須先啓用該設置才能使用。
當它設置爲true時,每次嘗試通過腳本進行調試時都會重置PowerShell會話。這意味着:
它可以通過添加以下行用戶設置JSON文件
啓用"powershell.debugging.createTemporaryIntegratedConsole": true
我還沒有很好的回答,但這是我在開發過程中減輕了這個問題。
我注意到VS Code正在緩存每次運行之間的變量,並且它有效地運行了腳本,就好像它是REPL一樣。
由於PowerShell的範圍的性質,可以在Invoke-Command -ScriptBlock {}
包裝你的代碼和變量是不是他們的腳本塊的外部訪問,你可以不用擔心在VS代碼留下對象重新運行代碼。