首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Azure管道命令行任务:“无法绑定参数'LiteralPath‘,因为它是空字符串”

Azure管道命令行任务:“无法绑定参数'LiteralPath‘,因为它是空字符串”
EN

Stack Overflow用户
提问于 2022-01-24 15:40:33
回答 1查看 993关注 0票数 0

我在多台机器上安装了管道代理,而且每台机器都有一个.env文件,因为每个机器的环境vars的本地值略有不同。然而,其中一个没有发挥作用。在每台机器上都以相同的方式安装和配置了代理。

在我的管道中,我有一个在$(Build.Repository.LocalPath)文件夹中工作的命令行任务。当它运行命令mvn clean install -DskipTests=true时,会在标题中抛出关于空字符串的错误。在该文件中,我确保M2_HOME指向了maven目录,并确保将Java和Maven添加到"Path“中。格式如下所示,对所有机器上的每个.env文件都是相同的格式。有什么线索吗?

代码语言:javascript
复制
JAVA_HOME=C:\\softwarebuild\\soft\\java\\jdk-11.0.2

M2_HOME=C:\\Users\\[redacted]\\.m2\\wrapper\\dists\\apache-maven-3.6.0-bin\\3rgjh30jneo7541hun7uggltkb\\apache-maven-3.6.0

Path=JAVA_HOME;M2_HOME\\bin

编辑:我在打开系统诊断时运行的。它是在告诉我它找不到cmd.exe吗?"cmdline.ps1“的第一行就是[CmdletBinding()]

代码语言:javascript
复制
2022-01-24T18:20:55.0366255Z Script contents:
2022-01-24T18:20:55.0380447Z mvn clean install -DskipTests=true
2022-01-24T18:20:55.0643303Z ##[debug]AGENT_VERSION: '2.196.2'
2022-01-24T18:20:55.0803490Z ##[debug]AGENT_TEMPDIRECTORY: 
'C:\agents\_work\_temp'
2022-01-24T18:20:55.0844911Z ##[debug]Asserting container path exists: 
'C:\agents\_work\_temp'
2022-01-24T18:20:55.1197587Z ##[debug]Leaving 
C:\agents\_work\_tasks\CmdLine_d9bafed4-0b18-4f58-968d- 
86655b4d2ce9\2.198.0\cmdline.ps1.
2022-01-24T18:20:55.1295729Z ##[debug]Caught exception from task script.
2022-01-24T18:20:55.1356782Z ##[debug]Error record:
2022-01-24T18:20:55.2573018Z ## 
[debug]C:\agents\_work\_tasks\CmdLine_d9bafed4-0b18-4f58-968d- 
86655b4d2ce9\2.198.0\cmdline.ps1 : Cannot bind argument to parameter 
'LiteralPath' because it is an empty string.
2022-01-24T18:20:55.2589074Z ##[debug]At line:1 char:1
2022-01-24T18:20:55.2616630Z ##[debug]+ . 
'C:\agents\_work\_tasks\CmdLine_d9bafed4-0b18-4f58-968d-86655b4d2ce ...
2022-01-24T18:20:55.2641009Z ##[debug]+ 
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2022-01-24T18:20:55.2664818Z ##[debug]    + CategoryInfo          : 
InvalidData: (:) [cmdline.ps1], ParameterBindingValidationException
2022-01-24T18:20:55.2688247Z ##[debug]    + FullyQualifiedErrorId : 
ParameterArgumentValidationErrorEmptyStringNotAllowed,cmdline.ps1
2022-01-24T18:20:55.2711281Z ##[debug] 
2022-01-24T18:20:55.2751043Z ##[debug]Script stack trace:
2022-01-24T18:20:55.2827845Z ##[debug]at <ScriptBlock>, 
C:\agents\_work\_tasks\CmdLine_d9bafed4-0b18-4f58-968d- 
86655b4d2ce9\2.198.0\cmdline.ps1: line 42
2022-01-24T18:20:55.2852703Z ##[debug]at <ScriptBlock>, <No file>: line 
1
2022-01-24T18:20:55.2878438Z ##[debug]at <ScriptBlock>, <No file>: line 
22
2022-01-24T18:20:55.2903959Z ##[debug]at <ScriptBlock>, <No file>: line 
18
2022-01-24T18:20:55.2932146Z ##[debug]at <ScriptBlock>, <No file>: line 
1
2022-01-24T18:20:55.2974680Z ##[debug]Exception:
2022-01-24T18:20:55.3223441Z ## 
[debug]System.Management.Automation.ParameterBindingValidationException: 
Cannot bind argument to parameter 'LiteralPath' because it is an empty 
string.
EN

回答 1

Stack Overflow用户

发布于 2022-01-24 20:01:34

我错过了一个叫做"ComSpec“的环境变量。脚本希望找到这个变量,路径的值指向cmd.exe。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/70836461

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档