2016-03-07 85 views
0

当我尝试在TFS 2015中发布我的asp.net核心Web应用程序时,它失败了“DNU(0,0):生成任务:错误:指定的路径,文件名或两者都太长“。 当故障排除后我意识到dnu.cmd发布了以下参数:错误 - 在TFS 2015 dnu发布

C:\ WINDOWS \ ServiceProfiles \ NetworkService.dnx \运行时\ DNX-CLR-双赢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发布--runtime DNX-CLR-双赢x86.1.0.0-RC1-UPDATE1 --wwwroot “wwwroot的” --wwwroot出 “wwwroot的” --iis命令 “网络”

的TFS中的MSBuild参数设置为:

/P:PublishProfile = PubStaging/P:DeployOnBuild =真

所以构建失败时将文件复制:

使用软件包的依赖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”。

任何人都可以给我一个提示如何进行?

+0

你是指什么意思?代码从GIT存储库中获取,因此所有编译都在TFS 2015服务器中完成。 – Peter

+0

您是否按照这篇文章构建和部署您的项目:https://msdn.microsoft.com/en-us/Library/vs/alm/Build/azure/deploy-aspnet5? –

回答

1

检查this情况:

  1. PowerShell脚本 “prebuild.ps1” 按照以前的答案和Microsoft部署指南:https://msdn.microsoft.com/en-us/Library/vs/alm/Build/azure/deploy-aspnet5

  2. 香草的MSBuild建设。没有开关或特殊设置。

  3. 运行“dnu publish”的Powershell脚本。这将创建整个Web应用程序结构的目录。

  4. “Windows文件复制”任务将#4中创建的目录结构部署到测试环境中的所有目标机器。