首页 > 解决方案 > 当我使用管道在 azure devops 上构建 csproj 文件时,为什么没有创建 bin 和 obj 文件夹?

问题描述

我正在使用管道在 Azure 开发操作上构建 C# 点网项目。构建成功运行,但构建后,我需要在工件中查看项目的 bin 和 obj 文件夹,我需要从中获取已编译的 dll,但未创建 bin 和 obj 文件夹。下面是管道 yaml 代码中的构建命令:

- task: VSBuild@1
  inputs:
   solution: 'C#\Ignify.eComIntegration\EventLogger\EventLogger.csproj'
   msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package 
   /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true 
   /p:PackageLocation="$(build.artifactStagingDirectory)"'
   platform: '$(buildPlatform)'
   configuration: '$(buildConfiguration)' 

此外,下面给出的是 csproj 文件中的部分代码:

<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>d:\a\1\s\C#\Ignify.eComIntegration\EventLogger\bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>

请建议可以做些什么来创建文件夹。

标签: c#.netazureazure-devopsazure-pipelines

解决方案


您的构建任务只需创建一个要部署在$(build.artifactStagingDirectory)文件夹中的包。您需要添加额外的构建步骤来复制额外的文件:复制文件任务。像这样的东西:

- task: CopyFiles@2 displayName: 'Copy Files to: $(Build.ArtifactStagingDirectory)' inputs: Contents: | **\bin\** **\obj\** TargetFolder: '$(Build.ArtifactStagingDirectory)'


推荐阅读