复制带有Azure功能项目的生成后事件的PDB

问题描述 投票:0回答:1

我正在使用Azure Functions V2项目Core 2.2上的后生成命令从一个级别的bin文件夹复制文件。我认为问题有两个部分。

目前,我的命令针对的是一个特定的文件,因为那是我遇到的问题:

 <Target Name="PostBuild" AfterTargets="PostBuildEvent">
<Exec Command="(robocopy $(TargetDir)bin\ $(TargetDir) MyProject.pdb) ^&amp; IF %25ERRORLEVEL%25 LSS 8 SET ERRORLEVEL = 0" />

PDB文件在新版本中不可用

作为全新版本运行时,运行copy命令时,主项目的原始PDB文件不可用-robocopy报告文件不可用。它们存在于从属项目中,可能是因为它们已经构建。

那么何时生成PDB文件?它是在post-build命令之后进行的吗?我可以在AfterTargets中放置一些目标,而不是PostBuildEvent来使此命令运行吗?

未复制文件

这种情况在我再次运行构建时发生,因此原始PDB文件does存在。

我有一个robocopy命令(我在绝望中也尝试过copy和xcopy)在手动运行时可以工作:

(robocopy $(TargetDir)bin\ $(TargetDir) MyProject.pdb) ^& IF %ERRORLEVEL% LSS 8 SET ERRORLEVEL = 0

当作为构建后事件运行时,它甚至报告文件已被复制:

Total    Copied   Skipped  Mismatch    FAILED    Extras
 Dirs :         1         0         1         0         0         0
Files :         1         1         0         0         0         0
Bytes :    57.5 k    57.5 k         0         0         0         0
Times :   0:00:00   0:00:00                       0:00:00   0:00:00

但是文件不存在。复制文件后的某个时间是否清除了目录?如上所述,我最好的猜测是我需要其他一些AfterTargets设置。

这似乎是一件很普通的事情。...我错过了什么,还是因为这是一个Functions项目?

c# .net-core azure-functions robocopy pdb-files
1个回答
0
投票

结果是有一个_GenerateFunctionsPostBuild目标(不确定确切来源),但使用该目标已修复该目标

<Target Name="PostBuild" AfterTargets="_GenerateFunctionsPostBuild">
<Exec Command="(robocopy $(TargetDir)bin\ $(TargetDir) *) ^&amp; IF %25ERRORLEVEL%25 LSS 8 SET ERRORLEVEL = 0" />

© www.soinside.com 2019 - 2024. All rights reserved.