我正在尝试将属性传递给MSBuild。该属性是以分号分隔的值列表。与this question不同,我是从PowerShell运行MSBuild的。
我得到:
PS> msbuild .\Foo.sln /p:PackageSources="\\server\NuGet;E:\NuGet"
MSBUILD : error MSB1006: Property is not valid.
Switch: E:\NuGet
如果我从命令提示符运行相同的命令,它工作正常。我如何让它在PowerShell中工作?
3条答案
按热度按时间exdqitrt1#
将参数括在单引号中:
在PowerShell v3上尝试以下操作:
flmtquvp2#
此外,使用ASCIII值有助于:
tf7tbtn23#
下面的 VBScript 函数可用于转义传递给 MSBuild.exe 的双引号内的属性值:
下面的示例演示了 Escape() 函数的用法