我将我的C# .net代码部署在Azure开发运维上。在后期构建事件中有一个csproj文件,其中包含一个copy命令。
<PropertyGroup>
<PostBuildEvent>copy /y "d:\a\1\s\C#\Ignify.Online\Organization\bin\Release\Ignify.Online.Organization.dll" "d:\a\1\s\CommerceSuiteObjects"</PostBuildEvent>
此命令尝试复制解决方案的dll,并将其粘贴到同一存储库中的另一个文件夹“CommerceSuiteObjects”中。当我使用管道运行解决方案的构建时,显示复制命令已成功运行,构建也成功,但在目标文件夹中看不到复制的dll。我不确定这个命令在azure dev ops上是否有效。请建议一下可能出了什么问题?
发布于 2019-09-06 14:08:43
为什么我看不到我在Azure Dev ops存储库上使用复制命令复制和粘贴的dll文件?
首先,您可以仔细检查是否从构建任务日志复制了.dll文件,如果是,您将看到这样的日志:
"D:\a\1\s\TestSample\TestSample\bin\Debug\TestSample.dll“"d:\a\1\s\CommerceSuiteObjects\TestSample.dll”的
copy /y
%1文件复制了。
第二,检查在使用复制任务时是否检查了正确的文件夹,作为测试,我在复制任务中设置了源文件夹为$(Build.SourcesDirectory)\CommerceSuiteObjects:

第三,重要是如果您没有在管道中创建文件夹CommerceSuiteObjects,当您使用copy event时,该文件夹将被视为一个文件。为了解决此问题,我在Visual studio生成任务之前添加了一个命令行任务来创建该文件夹:
if not exist CommerceSuiteObjects mkdir CommerceSuiteObjects

现在,它在我这边运行得很好,我可以在CommerceSuiteObjects文件夹中看到.dll文件。
希望这能有所帮助。
https://stackoverflow.com/questions/57799126
复制相似问题