【问题标题】:How to make VSTS Build copy files to the output directory with no sub-directories?如何使 VSTS Build 将文件复制到没有子目录的输出目录?
【发布时间】:2018-08-06 04:39:31
【问题描述】:

我是一个 ASP.NET Core 应用程序,我需要将一些字体复制到输出目录。在我的项目中,我将这些字体存储在 ProjectFolder/Assets 目录中。

在每种字体的属性中,我将 CopyToOutputDirectory 设置为 Always。

当 Visual Studio 构建项目时,文件将复制到构建 project.exe 的同一目录。这是我所期望的行为。

但是当我使用 VSTS 构建项目时,文件被复制到一个名为 Assets 的子目录中,这比 exe 低一级。

如何让 VSTS 将文件复制到与 exe 相同的文件夹中(就像 Visual Studio 一样)。

提前谢谢你。

【问题讨论】:

  • 你是如何在 VSTS 中构建项目的?您可以分享您的构建定义的屏幕截图吗?您在哪里注意到“文件被复制到名为 Assets 的子目录”?这是在您构建的工件中吗?
  • 在构建管道中发布文件之前添加“将文件复制到”步骤。您可以输入源和目标目录。这可能是一种解决方法,但会做你想做的事。您可以输入资产文件夹作为源并将它们复制回主文件夹。
  • 嗨帕特里克,我会在周末试试这个,我会告诉你的。谢谢!

标签: asp.net visual-studio azure-devops azure-pipelines


【解决方案1】:

使用 TFS2017update1 及更高版本,VSTS,您只需在 Copy Files Task 的高级选项下检查 Flatten Folders。目前最简单的解决方案。

此选项位于构建定义的“复制文件”步骤的“高级”部分。

这将展平文件夹结构并将所有文件复制到 指定的目标文件夹。

如果这不符合您的要求,您可以尝试使用复制文件步骤,看看这个thread

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-15
    • 2019-02-01
    • 2021-07-06
    • 2017-03-10
    • 1970-01-01
    • 2011-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多