MSBuild无法确定正确的解决方案依赖性

时间:2011-07-05 07:35:53

标签: msbuild continuous-integration

我很难找到解决这个问题的方法。

我有一个包含大约50个项目(C#)的解决方案(VS2008)。

项目间依赖项被添加为项目引用(而不是通过引用DLL)。

此外,VS中的依赖项在解决方案设置对话框中正确设置。

问题是,当我们在CI服务器上从MSBUILD(命令行)构建解决方案时,msbuild将按照它们在解决方案文件中的布局顺序构建项目,而不是根据的依赖关系。

我在网上找到了很多关于此的参考资料,没有解决方案......

如何从命令行使用msbuild正确构建解决方案?

1 个答案:

答案 0 :(得分:1)

这可能是由于解决方案中的构建顺序无效。您可以在不删除和重新添加项目的情况下更改构建顺序。在解决方案资源管理器中,右键单击解决方案名称,然后选择Project Build Order。您将能够指定项目的构建顺序,因此它应该在msbuild中工作。如果在VS内部,您在开发期间缓存了DLL,则通常会发生这种情况。要验证它是否有效,请在更改构建顺序和运行构建之前删除所有obj和bin文件夹。