创建构建管道后出现构建错误-Azure Devops

时间:2019-11-13 12:51:14

标签: azure azure-devops

我已将现有的.NET Webforms项目上载到Azure Devops,并且当我运行生成定义时,在VSBuild部分出现错误。

ASPNETCOMPILER引发错误,该目录不存在。

感谢您的帮助...

以下是构建解决方案日志错误-

ASPNETCOMPILER(0,0):错误1003:目录'C:\ holmestest \ PPS \ new123'不存在。 进程“ msbuild.exe”以代码“ 1”退出。

Build Error

2 个答案:

答案 0 :(得分:0)

  

错误1003:目录“ C:\ holmestest \ PPS \ new123”不存在。进程“ msbuild.exe”以代码“ 1”退出。

根据错误消息:

  

目录'C:\ holmestest \ PPS \ new123'不存在

看来您在项目中使用的是绝对路径C:\holmestest\PPS\new123,这就是错误消息的原因。

将包含代码的绝对路径提交给Azure开发人员时,Azure开发人员将转到执行计算机(代理)下的路径以找到此文件夹。如果执行计算机(代理)没有相应的文件夹,则在使用Azure devops进行构建时,Azure devops找不到该路径。

要解决此问题,您可以将此new123添加到您的项目/解决方案中,然后在代码中使用相对路径

更新

  

有人可以建议我如何在.yml文件中使用msbuild.exe命令吗?   msbuild.exe“ \ website.publishproj” / p:deployOnBuild = true   / p:publishProfile = WebsiteTestDemo /p:VisualStudioVersion=1x.0我需要参考的PathToTheFile是什么?

您可以使用以下msbuild任务来构建网站项目。

- task: MSBuild@1
  displayName: 'Build solution **/*.publishproj'
  inputs:
    msbuildArguments: '/p:deployOnBuild=true /p:publishProfile=WebsiteTestDemo /p:VisualStudioVersion=1x.0'

如果我正确理解了您的“ PathToTheFile”,则表示publishProfile的路径?如果是,则可以切换存储库并找到该publishProfile文件,然后将在浏览器中获取路径:

enter image description here

希望这会有所帮助。

答案 1 :(得分:0)

我要集成Azure Devops Build管道的应用程序是ASP.Net网站应用程序。与常规ASP.Net Web窗体应用程序相比,Azure Devops集成完全不同。这是我发现的一些参考链接,

Azure DevOps Continuous Integration with asp.net website project instead of web application

我将.yml中的解决方案文件更改为 解决方案:'** / *。publishproj'

有人可以建议我如何在.yml文件中使用msbuild.exe命令吗?

msbuild.exe“ \ website.publishproj” / p:deployOnBuild = true / p:publishProfile = WebsiteTestDemo /p:VisualStudioVersion=1x.0

我需要参考的PathToTheFile是什么?