【发布时间】:2015-11-24 23:52:02
【问题描述】:
我有几个构建定义,用于使用本地服务器在 VSO 上运行的持续集成。问题是有时它们会失败,因为 Microsoft.WindowsAzure.targets 在构建 Azure 项目时无法复制某些文件(在本地构建时,无论是使用 VS 还是 MSBuild,都可以正常工作)。 我的解决方案的基本结构如下:
Solution
|_Azure.Web.App
| |_Roles
| |_Web.App
|_Web.App
|_Controllers
|_Models
|_Resources
| |_File1.csv
| |_File2.csv
|_Startup
| |_File3.cmd
| |_File4.xml
| |_File5.msi
|_Views
问题是在构建Azure.Web.App时Resources和Startup文件夹中的文件没有复制到输出目录,显示这个错误:
[错误]C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\Windows Azure Tools\2.7\Microsoft.WindowsAzure.targets(2787,5):错误 MSB3030:无法复制文件“Resources\File1.csv”,因为找不到。
所有文件设置为始终复制到输出目录,构建操作如下:
- CSV 和 XML 文件的内容。
- CMD 和 MSI 文件无。
我无法确定发生这种情况的具体情况,而且对我来说似乎很随机。通常在再次构建之前手动再次触发构建和/或删除代理目录中的源文件可以解决问题,这并不理想,因为目前持续集成不可靠。 仔细查看了所有现有主题,但没有找到适合我情况的主题。抱歉,如果问题已被提出,提前致谢。
编辑:忘了提我说的是基于 vNext 的新构建定义(不是基于 XML 的构建)。
【问题讨论】:
-
在构建定义中将“Clean Workspace”设置为“All”,看看是否仍然可以看到此问题。
-
谢谢埃迪!您是在谈论 Visual Studio Build 步骤中出现的“清理”选项吗?我会试试这个,看看效果如何。
-
是的,还在构建定义中将“存储库”选项卡下的“清理”选项设置为“真”。
-
嘿,埃迪,再次感谢您的回答。在过去的几天里,我一直在监控构建的健康状况,一切都运行良好,直到昨天和今天的构建失败。你碰巧有其他想法吗?可能是因为我们运行代理的服务器?
-
构建失败时的错误信息是什么?
标签: continuous-integration azure-devops