通过具有多个ReferencePath的命令行执行MSBuild

通过具有多个ReferencePath的命令行执行MSBuild,msbuild,Msbuild,如何在命令行的MSBuild中传递多个ReferencePath。我现在正在用这个 MSBuild /t:Rebuild "Solution1.sln" /p:ReferencePath="C:\My Library 1\obj\Debug; C:\My Library 2\obj\Debug" MSBuild正在返回一个MSB1006错误。请注意,我的引用路径中有空格。尝试将分号转义为%3b 尝试在整个属性表达式周围移动引号,而不仅仅是值 /p:"Name=Value One;Value T

如何在命令行的MSBuild中传递多个ReferencePath。我现在正在用这个

MSBuild /t:Rebuild "Solution1.sln" /p:ReferencePath="C:\My Library 1\obj\Debug; C:\My Library 2\obj\Debug"
MSBuild正在返回一个MSB1006错误。请注意,我的引用路径中有空格。

尝试将分号转义为%3b

尝试在整个属性表达式周围移动引号,而不仅仅是值

/p:"Name=Value One;Value Two"

无论我做什么,我似乎无法使用MSBuild使其工作。我现在用它来编译我的解决方案;它将在保存ReferencePath的位置读取我的用户项目设置,并使用该设置查找我要使用的DLL的正确版本。

这在powershell中不起作用

msbuild C:\temp\project.sln /p:referencepath="C:\Checkout\References
\CRM 2011;C:\Checkout\References\Log4Net\4.0\release"

但在老式的cmd提示符下工作正常。

我也有同样的问题。这对我很有用:

msbuild{{slnPath}/t:rebuild/p:OutDir={{outputpath}}/p:Configuration=Release


为每个参数指定/p

替换“;”“3%B”似乎在我的设置中起作用,Nant和Jenkins不起作用。它忽略了所有的ReferencePath,并使用了解决方案中声明的引用路径。出于对所有邪恶事物的热爱,我仍然无法让它工作!这与问题中的代码有何不同?如果要使用visual studio编译代码,则应调用DEVENV.com而不是DEVENV.exe。exe将打开VS的一个实例。