Ошибка MSBuild MSB3021 с CruiseControl.Net: невозможно скопировать файл - PullRequest
1 голос
/ 21 сентября 2011

У меня «Не удается скопировать файл X.DLL» в задаче MSBuild в моем проекте CruiseControl.Net.

Мой проект CCNet выглядит следующим образом:

<project name="Trunk" queue="Back" queuePriority="1">
    <tasks>
        <msbuild>
            <executable>C:\WINDOWS\Microsoft.NET\Framework\v3.5\MSBuild.exe</executable>
            <workingDirectory>D:\wwwroot\CruiseControl\Working\trunk</workingDirectory>
            <projectFile>kop.sln</projectFile>
            <buildArgs>/noconsolelogger /v:quiet /p:Configuration=Debug</buildArgs>
            <targets>ReBuild</targets>
            <timeout>600</timeout>
        </msbuild>
    </tasks>
</project>

Сборкаотчет выглядит следующим образом:

<msbuild startTime="09/21/2011 15:56:11" elapsedTime="00:00:32" elapsedSeconds="32" success="false">
  <warning line="0" column="0" timeStamp="09/21/2011 15:56:12"><![CDATA[MSB3021 : Impossible de copier le fichier "D:\wwwroot\CruiseControl\Working\trunk\Reporting\bin\Release\Reporting.dll" vers "back\\Bin\Reporting.dll". Impossible de trouver une partie du chemin d'accès 'D:\wwwroot\CruiseControl\Working\trunk\Reporting\bin\Release\Reporting.dll'.]]></warning>
  <warning line="0" column="0" timeStamp="09/21/2011 15:56:12"><![CDATA[MSB3021 : Impossible de copier le fichier "D:\wwwroot\CruiseControl\Working\trunk\KoamaOP\bin\Release\KoamaOP.dll" vers "back\\Bin\KoamaOP.dll". Impossible de trouver une partie du chemin d'accès 'D:\wwwroot\CruiseControl\Working\trunk\KoamaOP\bin\Release\KoamaOP.dll'.]]></warning>

Он прекрасно работает, когда я запускаю его с консоли на моем собственном компьютере.

Файл, который он пытается скопировать (\ bin \ Release \ KoamaOP.dll) не существует, но существует \ bin \ Отладка \ KoamaOP.dll.Почему он пытается получить Release dll, хотя я указал /p:Configuration=Debug?

В чем может быть причина проблемы?

Спасибо

1 Ответ

0 голосов
/ 21 сентября 2011

Вы проверили, что файл D: \ wwwroot \ CruiseControl \ Working \ trunk \ Reporting \ bin \ Release \ Reporting.dll действительно существует в окне сборки? Возможно, путь неверный.

Копия пытается поместить файл в «заднюю» папку. Это шаг перед сборкой или после сборки, добавленный вами для сохранения старых версий файлов? Если это так, возможно, вы неправильно настроили один из этих шагов.

Что касается его работы на вашем компьютере - я подозреваю, что у вас уже есть версия Release dll, поэтому шаг копирования не завершится неудачей. Если вы удалите все dll-файлы из своей коробки, а затем восстановите, я подозреваю, что вы найдете ту же проблему.

...