我是一个包含类定义的脚本文件。使用新的V5 Powershell语法。我有另一个脚本文件,它点源类并使用它。我在控制台中测试该文件。
在干净启动控制台时,它将正确加载类。然后我对类进行了一些更改并将它们保存回文件。重新运行脚本似乎不会选择更改。就好像一旦加载到控制台中,该类是不可变的,不会被解析和重新加载。
这在开发时真的很痛,因为我必须在改变一个类之后启动一个新的控制台。
有没有办法强制Powershell每次看到它时重新加载类?
这在Powershell ISE和Powershell控制台(使用vscode)中调试的代码中都会发生。
答案 0 :(得分:1)
这是本文撰写时Powershell
和looks like the issue remains unresolved中的类的一个已知问题。
今天要解决此问题,您要么需要启动一个新的交互式会话(您不想执行此会话),要么将您的开发类加载到Powershell的子实例中:
powershell.exe -Command { Your-Code }
# Alternatively, write a script to test your newly updated class
powershell.exe -File \path\to\Test-ClassScript.ps1