我有如下的 msbuild 命令
my $cmd = "msbuild /v:n /target:clean;publish /p:Configuration=".$buildConfig." \"".$solutionPath."\" /p:OutputPath=" ."\"$outputdir\" /p:SolutionDir="."\"$sourceDir\\";
在编译时,这是对我来说看起来不错的确切命令。我不确定为什么在行尾有一个 " 缺失。
msbuild /v:n /target:clean;publish /p:Configuration=Release "D:\Projects\Suite\Verify\Manager\source\Project1\Project1.csproj" /p:OutputPath="D:\Repository\Suite\Project1" /p:SolutionDir="D:\Projects\Suite\Verify\
此外,如果我在命令行中复制确切的文本,它可以正常工作而不会出现任何错误。
但是当我从 perl 脚本运行它时,我收到以下错误
(PostBuildEvent target) ->
c:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(3717,9): error MSB3073: The command "copy "D:\Projects\Suite\Verify\ 2>&1\Common\libraries\ABC.NET\ABC9-32.dll" "D:\Projects\Suite\Verify\ 2>&1bin\Release\"" exited with code 1. [D:\Projects\Suite\Verify\Common\source\Plan\Plan.csproj]
这" 2>&1"
是从某个地方附加的,我不知道如何处理它?
基本上 project1 依赖于 Plan ,它设置了一个 postbuild 事件来复制文件"ABCpdf9-32.dll"
。为什么我会收到此错误?什么是解决方案。请帮忙