如何修复 azure-devops 构建步骤中的““复制”任务不支持复制目录”?

Posted

技术标签:

【中文标题】如何修复 azure-devops 构建步骤中的““复制”任务不支持复制目录”?【英文标题】:How do I remedy "The "Copy" task does not support copying directories" in azure-devops build step? 【发布时间】:2021-05-04 03:02:58 【问题描述】:

根据我收集到的信息,自上次构建 Azure-DevOps 以来所做的唯一更改是此 nuget-package 的版本。 因此,要么那里出现错误(我无权调查),要么问题出在构建任务的其他地方。

[错误]f:\WorkB_tool\dotnet\sdk\5.0.102\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Publish.targets(237,5): 错误 MSB3025:源文件 "C:\windows\ServiceProfiles\NetworkService.nuget\packages\package\version\staticwebassets\css\open-iconic\FONT-LICENSE" 实际上是一个目录。 “复制”任务不支持复制 目录。

我想这个错误已经很清楚了,但我还没有找到有关导致它的原因或如何修复它的资源。

【问题讨论】:

嗨,你能在这里分享 .csproj 文件并构建参数吗?另外,您使用的是哪个代理?托管代理还是自托管代理? 【参考方案1】:

通过添加文件结尾 (css\open-iconic\FONT-LICENSE.txt),构建可以继续。 然而,为什么这突然成为一个问题仍然让我感到困惑。

【讨论】:

您好,感谢您的分享,您可以Accept it as an Answer,它可以帮助遇到相同问题的其他社区成员,我们可以存档此线程,谢谢。 当这样的文件在 NuGet 中时,这将不起作用。【参考方案2】:

您的 .props 文件中的 Copy Task 似乎有问题,

复制任务应该使用文件而不是文件夹,所以你应该使用这个:

<ItemGroup>
           <File Include="$(MSBuildThisFileDirectory)xxx\staticwebassets\assets\libs\flot-charts\Makefile\*.*"></File>
    </ItemGroup>
    
<Target Name="xxx" AfterTargets="xxx">
     <Copy SourceFiles="@(File)" DestinationFolder="xxx"></Copy>

</Target>

我们也可以通过任务copy file复制文件。

【讨论】:

以上是关于如何修复 azure-devops 构建步骤中的““复制”任务不支持复制目录”?的主要内容,如果未能解决你的问题,请参考以下文章

Azure Pipeline 中的简单 Appium 测试 - 如何修复失败的构建步骤 (vstest)?

如何修复 TestFlight (iTunes Connect) 中的多个构建错误?

如何修复 extjs4.1 中的构建错误 com.sencha.exceptions.ExProcess

如何修复 Flutter 构建问题期间调用的 setState

构建新的 Vue CLI 3 项目时,如何修复 terser-webpack-plugin 中的“TypeError:无法读取未定义的属性“缩小”?

如何在 azure devops 构建代理中修复“*pod* 不支持配置文件”