我已經使用MSBuild創建了一個構建文件,它可以構建解決方案並將所有數據保存到一個文件夾中。現在我想將所有數據複製到通過共享文件夾訪問的遠程機器上。使用MSBuild將保存在本地計算機上的文件複製到遠程計算機上的共享位置
<PropertyGroup>
<PublishDir>\\remoteMachineName\QA</PublishDir>
<ServiceLocationQA>remoteMachineName\QA</ServiceLocationQA>
<MachineName>remoteMachineName</MachineName>
</PropertyGroup>
<ItemGroup>
<Source Include=".\buildartifacts\**\*.*"/>
<ServiceFilesToDeploy Include=".\buildartifacts\**\*.*" />
</ItemGroup>
<Copy SourceFiles=".\buildartifacts\**\*.*"
DestinationFiles="@(ServiceFilesToDeploy->'$(PublishDir)\%(RecursiveDir)%(Filename)%(Extension)')"
ContinueOnError="false" />
執行構建腳本後,我得到以下錯誤:
「DestinationFiles」 指的是48項目(S),和 「SourceFiles」 是指1個項目。他們必須有相同數量的項目「
我只是想保持本地機器上的文件複製到使用的MSBuild在遠程計算機上的共享位置請幫
感謝您的快速回復。你能解釋一下這段代碼在做什麼。 – SharpCoder
區別在於,您的代碼將使用文件列表作爲輸入,同時按照我的方式執行,將迭代列表並調用每個元素的目標。檢查http://stackoverflow.com/questions/16540562/msbuild-copy-entire-directory-while-using-metadata-in-path-names那裏我解釋了一下MSBuild中的批處理。 – MikeR
謝謝你解釋。 – SharpCoder