我继承了一个非常大的VS2012网站项目(不是Web应用程序),并试图使其部署自动化.项目中有大量的循环引用,因此要使其使用aspnet_compiler.exe进行预编译,我必须打开fixedname.问题是它导致在我的四核、16 GB内存、固态硬盘开发人员机器上进行构建需要大约20分钟.以前的开发人员不必处理这个问题,因为他只需将整个源代码复制到生产Web服务器即可.
因此,在解决循环引用问题之前,我想至少使用msdeploy自动部署项目.我可以在visual studio中使用发布配置文件,它正是我想要的:
- 生成引用的DLL并将其添加到项目中.
- 我喜欢网络.配置转换.
- 我甚至没有try 构建网站,而只是为我将其打包成zip文件.
我一生都搞不懂的是如何获得MSBuild.exe做同样的事!
MSBuild.exe WebProject.vs2012.sln /m /T:Build
/p:Configuration=Release`;DeployOnBuild=true`;PublishProfile=TestDeploy
上面的命令仍然试图执行aspnet_编译器,这不是我想要的.发布配置文件说它不应该被预编译...但在日志(log)中我看到它在执行它.
那么:如何使用msbuild在不预编译的情况下部署网站项目呢?