Syl*_*ain 8 c# msbuild visual-studio
给出一个解决方案:
当你以这种方式调用msbuild时:
msbuild.exe /v:m "c:\mysolution\p1\p1.csproj"
Run Code Online (Sandbox Code Playgroud)
如有必要,msbuild检查所有项目依赖项是否构建依赖项.典型的输出是:
Microsoft (R) Build Engine Version 4.0.30319.1
[Microsoft .NET Framework, Version 4.0.30319.1]
Copyright (C) Microsoft Corporation 2007. All rights reserved.
P4 -> c:\mysolution\P4\bin\Debug\P4.dll
p3 -> c:\mysolution\p3\bin\Debug\p3.dll
p2 -> c:\mysolution\p2\bin\Debug\p2.dll
p1 -> c:\mysolution\p1\bin\Debug\p1.dll
Run Code Online (Sandbox Code Playgroud)
就我而言,我知道依赖存在并且没有问题.
有没有办法只在p1.csproj
不验证依赖项的情况下构建项目?解决方案可以使用msbuild或其他内容.
您可以传递/p:BuildProjectReferences=false
给 msbuild,它将跳过构建项目引用..但这有一个限制,如果您的解决方案配置和引用项目的配置不匹配,msbuild 将无法解析引用项目的目标输出文件...
这里有一个免费的vs扩展包,你可以下载并尝试 http://visualstudiogallery.msdn.microsoft.com/98de4058-8dc7-435b-9e01-c0f71dace808
vs 包:Sharp Build Utility
我是这个扩展的作者,我在当前的工作中也有同样的需求,喜欢这个工具......
本质上,此扩展可以处理上述情况,这将创建构建项目文件的影子副本,将所有项目引用更改为 dll 文件引用,并使用影子项目文件启动 msbuild。