当我尝试在TFS 2015中发布我的asp.net核心Web应用程序时,它使用“DNU(0,0):构建任务失败:错误:指定的路径,文件名或两者都太长” . 在进行故障排除时,我意识到dnu.cmd发布具有以下参数:
C:\ Windows \ ServiceProfiles \ NetworkService.dnx \ runtimes \ dnx-clr-win-x86.1.0.0-rc1-update1 \ bin \ dnu.cmd发布“D:\ TFSAgent_work \ 19 \ s \ code \ src \ WebsiteApp“--out”C:\ Windows \ ServiceProfiles \ NetworkService \ AppData \ Local \ Temp \ PublishTemp \ WebsiteApp59“ - configuration release --runtime dnx-clr-win-x86.1.0.0-rc1-update1 --wwwroot “wwwroot”--wwwroot-out“wwwroot”--iis-command“web”
TFS中的MSBuild参数设置为:
/ P:PublishProfile = PubStaging / P:DeployOnBuild = True
因此,复制文件时构建失败:
使用包依赖关系Microsoft.AspNet.Http.Features 1.0.0-rc1-final源C:\ Windows \ ServiceProfiles \ NetworkService.dnx \ packages \ Microsoft.AspNet.Http.Features \ 1.0.0-rc1-final目标C: \ Windows \ ServiceProfiles \ NetworkService \ AppData \ Local \ Temp \ PublishTemp \ WebsiteApp59 \ approot \ packages \ Microsoft.AspNet.Http.Features \ 1.0.0-rc1-final DNU(0,0):错误:指定的路径,文件名称或两者都太长 . 完全限定的文件名必须少于260个字符,目录名必须少于248个字符 .
TFS服务器在NetworkService下运行,但输出应根据我的发布配置文件进入“.... \ artifacts \ PublishOutput” .
任何人都可以给我一个提示如何进行?
1 回答
检查this案例:
根据上一个答案和Microsoft部署指南
Powershell脚本"prebuild.ps1":https://msdn.microsoft.com/en-us/Library/vs/alm/Build/azure/deploy-aspnet5
香草MSBuild构建 . 没有开关或特殊设置 .
Powershell脚本运行“dnu发布” . 这将创建整个Web应用程序结构的目录 .
“Windows文件复制”任务将#4中创建的目录结构部署到测试环境中的所有目标计算机 .