【问题标题】:VS2008 Build Error with xcopyVS2008 使用 xcopy 构建错误
【发布时间】:2012-06-28 23:52:40
【问题描述】:

我从事的一个 .NET 项目最近遇到了构建错误。该项目之前构建没有问题,并且此错误在我尝试过的几台开发机器上仍然存在。我在搜索中看到了类似但不相同的帖子,这些帖子建议编辑构建命令。您如何编辑项目的构建命令,这个 xcopy 命令是否存在明显问题?

自上次构建解决方案以来,没有任何更改。我只需要更新几个 ComponentOne 组件的许可。我已经恢复到以前构建的版本,现在有同样的错误。是否有任何我可能无意中做出的更改可能导致问题?

xcopy C:\Subversion Code\Subversion\Mrw\trunk\MrwMeasureApp\MrwReports C:\Subversion    Code\Subversion\Mrw\trunk\MrwMeasureApp\bin\Debug\MrwReports\ /Y
Invalid number of parameters
c:\WINDOWS\Microsoft.NET\Framework\v3.5\Microsoft.Common.targets(3397,13): error MSB3073: The command "xcopy C:\Subversion Code\Subversion\Mrw\trunk\MrwMeasureApp\MrwReports C:\Subversion Code\Subversion\Mrw\trunk\MrwMeasureApp\bin\Debug\MrwReports\ /Y" exited with code 4.
Done building project "MrwMeasureApp.vbproj" -- FAILED.

提前感谢您的任何见解。

【问题讨论】:

    标签: c# .net visual-studio-2008 build xcopy


    【解决方案1】:

    你应该把你的参数用引号括起来,像这样。

    xcopy
       "C:\Subversion Code\Subversion\Mrw\trunk\MrwMeasureApp\MrwReports"
       "C:\Subversion Code\Subversion\Mrw\trunk\MrwMeasureApp\bin\Debug\MrwReports\"
       /Y
    

    换行仅是为了可见性。

    【讨论】:

    • 谢谢,我刚刚注意到“Subversion Code”中有一个空格,将文件夹重命名为“SubversionCode”允许构建。但是,为了将来参考,如何在 Visual Studio 2008 中为构建命令添加引号?
    • 不,通过visual studio自动调用。从现在开始,我是否应该确保在项目文件夹中避免出现空格?
    • 哼。据我所知(虽然我不会发誓,大约两年没有使用 2008)自动构建事件应该总是正确地转义和包装参数。即,您不需要避免空格 - 但在这种情况下,直到您找到原因,也许您应该。 =)
    【解决方案2】:

    你应该引用路径参数:

    xcopy "C:\Subversion Code\Subversion\Mrw\trunk\MrwMeasureApp\MrwReports" "C:\Subversion Code\Subversion\Mrw\trunk\MrwMeasureApp\bin\Debug\MrwReports\" /Y
    

    【讨论】:

    • 谢谢,我注意到“Subversion Code”中有一个空格,将文件夹重命名为“SubversionCode”允许构建。但是,为了将来参考,如何在 Visual Studio 2008 中为构建命令添加引号?
    • 只需在自定义构建命令的所需部分加上引号。
    • 这不是自定义构建命令,默认使用 Visual Studio 构建。
    猜你喜欢
    • 1970-01-01
    • 2012-12-10
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-25
    相关资源
    最近更新 更多