1

我是 MSBuild 的新手,我正在尝试将文件从源代码控制上的一个文件夹复制到项目目录。下面是代码:

<ItemGroup>
    <MySourceFiles Include="C:\my_clearcase_view\Demo_Folder\demo.jar" />
</ItemGroup>

<Target Name="AfterBuild">
   <Copy SourceFiles="@(MySourceFiles)" DestinationFiles="$(MSBuildProjectDirectory)\demo.jar" />
</Target>

此代码适用于“demo.jar”文件的绝对路径。文件夹结构如下所示:

C:\my_clearcase_view\
             - DemoFolder (Source)
             - my_project (Destination, which is $(MSBuildProjectDirectory))

假设源路径永远不会改变,我怎样才能获得文件夹层次结构中项目上方的源文件的相对路径?我只能使用 $(MSBuildDirectory) 到达项目目录的根目录。请指教。提前致谢。

4

2 回答 2

1

如果我对您的理解正确,您可以这样做;

<ItemGroup>
    <MySourceFiles Include="$(MSBuildProjectDirectory)\..\Demo_Folder\demo.jar" />
</ItemGroup>
于 2012-05-15T22:19:03.363 回答
0

根据 Rory 的回答,我尝试了不同的组合,最终得到了它。

<ItemGroup>
   <MySourceFiles Include="..\Demo_Folder\demo.jar" />
</ItemGroup>

感谢指针罗里。

于 2012-05-16T14:13:48.437 回答