net - ¿Cómo fuerzo a powershell a recargar un módulo personalizado?
windows management framework 5.1 español (3)
He creado un módulo ''ActiveDirectory.psm1'' que contiene una clase en powershellv5. Estoy importando ese módulo en otro archivo llamado ''test.ps1'' y luego estoy llamando a un método de la clase.
test.ps1 contiene lo siguiente:
using module ''//ser01/Shared/Scripts/Windows Powershell/modules/ActiveDirectory/ActiveDirectory.psm1''
Set-StrictMode -version Latest;
$AD = [ActiveDirectory]::New(''CS'');
$AD.SyncGroupMembership($True);
Todo funciona como se espera, PERO cuando realizo un cambio en ActiveDirectory.psm1 y guardo los cambios que no se reflejan de inmediato. es decir, si ActiveDirectory.psm1 contiene:
write-verbose ''do something'';
Si cambio eso a
write-verbose ''now the script does something else'';
la salida sigue siendo "hacer algo"
Supongo que ha guardado el módulo en la memoria y no lo vuelve a cargar, por lo que faltan los cambios que he realizado. ¿Qué comando necesito ejecutar para cargar la versión guardada más reciente del módulo?
Importar-Módulo ''E: / xxx.ps1'' -Force
Como lo sugirió wOxxOm intente Import-Module ... -Force
o si eso no funciona, intente eliminarlo explícitamente con Remove-Module
y reimportarlo
Acabo de crear la respuesta para que la pregunta se pueda cerrar si se resuelve: si wOxxOm creará una respuesta, la eliminaré.
Para cualquier persona que se encuentre con este problema, consulte https://github.com/PowerShell/PowerShell/issues/2505
Parece que hay un error conocido desde hace mucho tiempo con respecto a la importación de módulos que están por encima del nivel rudimentario en complejidad (por ejemplo, tengo un módulo con una clase única y un método de clase que no se actualiza).