【发布时间】:2012-04-25 17:04:33
【问题描述】:
我有一个模块清单文件 [.psd1 文件],我通过它导入 嵌套模块 [.psm1 文件]。其中一个模块 [.psm1] 文件在全局范围内定义了一个 constant 变量,如下所示 -
set-variable -name DataDirectory -option Constant -value "DataSources" -scope global -description "Data Directory"
当我对 psd1 文件执行 remove-module 然后再次尝试在 Powershell ISE 的同一会话中执行 import-module 时,我得到以下信息错误 -
+ set-variable <<<< -name DataDirectory -option Constant -value "DataSources" -scope global -description "Data Directory"
+ CategoryInfo : WriteError: (DataDirectory:String) [Set-Variable], SessionStateUnauthorizedAccessException
+ FullyQualifiedErrorId : VariableNotWritable,Microsoft.PowerShell.Commands.SetVariableCommand
这意味着在其中一个嵌套模块中定义的变量尚未卸载。
我必须明确做一个 remove-variable 吗?我认为 remove-module 会卸载所有内容
【问题讨论】: