我正在尝试使用MSBuild编译一个包含一些BizTalk 2010项目(地图,模式,管道)和一些非BizTalk项目(控制台应用程序,Web应用程序)的解决方案。
MSBuild由Nant触发。问题是,每次运行编译时,BizTalk项目都会重新编译(并且程序集版本号会更改)。即使对整个解决方案的任何部分进行了绝对无更改,也会发生这种情况。
换句话说,如果我构建一次解决方案,则会很好地创建程序集。立即,如果我再次构建,则不会重新创建非BizTalk程序集(MSBuild报告跳过目标“CoreCompile”,因为所有输出文件都相对于输入文件是最新的) 。但是,BizTalk程序集很乐意重新创建。这很烦人。
请有人帮忙/建议吗?
答案 0 :(得分:0)
BizTalk Server 2009和2010 .btproj项目文件确实是MSBuild项目。正如您所注意到的那样,创建标准BizTalk目标的方式可以防止BizTalk项目的增量构建。
幸运的是,MSBuild是可扩展的,可以通过多种方式进行自定义。请按照the instructions on this post更改.btproj文件的标准构建逻辑,以便为构建系统添加增量支持。