Azure构建管道未生成bin文件夹

时间:2020-02-11 11:03:06

标签: c# asp.net-mvc visual-studio asp.net-mvc-5 azure-devops

我有一个包含多个项目的aspnet MVC 5解决方案,我需要使用azure CI和CD发布主项目,因此我配置了azure构建管道(请参阅附件以获取配置)。但是当生成工件时,我注意到没有带部署文件的bin文件夹。此行为的可能原因是什么?

This is the generated artifact

This is Solution Configuration task

This is the publish path

This is publish artifact configuration task

This is link for the logs of the pipeline

This is The error when i chose the solution instead of csproj

This is after chaining to SLN or set AnyCPU

1 个答案:

答案 0 :(得分:0)

此行为的可能原因是什么?

根据您提供的图像,如果在Visual Studio生成任务中选择项目文件.csproj 而不是解决方案文件.sln ,则可以重现此问题:

enter image description here

这是因为如果我们选择项目文件.csproj,则在构建项目时会出现警告:

Warning : The OutputPath property is not set for project 'ASP.NETMVC.csproj'.  Please check to make sure that you have specified a valid combination of Configuration and Platform for this project.  Configuration='release'  Platform='any cpu'.  You may be seeing this message because you are trying to build a project without a solution file, and have specified a non-default Configuration or Platform that doesn't exist for this project.

enter image description here

尽管通过了任务的结果,但由于上述警告,输出未正确输出。

构建成功的原因是未生成bin文件夹。

要解决此问题,我们在Visual Studio Build任务中选择解决方案文件:

enter image description here

然后警告消失,并生成bin文件夹:

enter image description here

更新

当我选择解决方案而不是csproj时,出现相关错误 由于缺少参考文献,导致构建失败。

那是因为您只还原了nuget restore任务中的packages.config文件之一。您需要将其更改为.sln文件而不是packages.config文件。

此外,要解决您以前的问题,我们可以选择.sln文件而不是项目文件(我之前回答过。)。或者,您可以将默认变量 BuildPlatform any cpu更改为AnyCPU(移动空格)。

希望这会有所帮助。