Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/powershell/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将Powershell模块作为TeamCity上的LocalSystem帐户导入_Powershell_Module_Service Accounts - Fatal编程技术网

将Powershell模块作为TeamCity上的LocalSystem帐户导入

将Powershell模块作为TeamCity上的LocalSystem帐户导入,powershell,module,service-accounts,Powershell,Module,Service Accounts,在我的个人资料下运行命令和TeamCity运行同一命令之间,我有一些奇怪的行为 > Import-Module $root\packages\fsm.buildrelease.*\tools\modules\BuildDeployModules -Force 如果手动运行脚本,构建将按预期启动。如果我让TeamCity执行脚本,它会吐出以下内容 导入模块:未加载指定的模块“C:\BuildAgent\work\81EB7C2FDFC0AF\packages\fsm.buildreleas

在我的个人资料下运行命令和TeamCity运行同一命令之间,我有一些奇怪的行为

> Import-Module $root\packages\fsm.buildrelease.*\tools\modules\BuildDeployModules -Force
如果手动运行脚本,构建将按预期启动。如果我让TeamCity执行脚本,它会吐出以下内容

导入模块:未加载指定的模块“C:\BuildAgent\work\81EB7C2FDFC0AF\packages\fsm.buildrelease.*\tools\modules\BuildDeployModules”,因为在任何模块目录中都找不到有效的模块文件

我已经两次和三次验证模块是否存在于该位置。我已经浏览了我的模块,在
参数
之前添加了
[cmdletbinding()]
,但它似乎并没有解决这个问题

这是令人沮丧的,因为它没有说“哪个”模块得到了传入的无效参数



问题与导入模块无关;powershell在引导您解决此问题方面没有多大帮助。直到我将
-VERBOSE
开关打开导入,问题的根源才暴露出来。一旦我这样做了,我得到了一个新的错误比旧的

:参数属性必须是常量或脚本块。
FullyQualifiedErrorId:ParameterAttributeArgumentNeedstoBeconstanderScriptBlock

本质上,我使用的是带有双引号而不是单引号的
ValidatePattern
。使用
ValidatePattern

# Bad
[ValidatePattern("^[a-z]$")]

# Good
[ValidatePattern('^[a-z]$')]
# Bad
[ValidatePattern("^[a-z]$")]

# Good
[ValidatePattern('^[a-z]$')]