gpt4 book ai didi

msbuild - 查找 MSBuildProjectDirectory 父目录

转载 作者:行者123 更新时间:2023-12-01 20:13:28 29 4
gpt4 key购买 nike

MSBuild 3.5

我有以下项目结构:

trunk/MainSolution.sln
trunk/Build/MyBuild.Proj
trunk/Library/...
trunk/etc...

到目前为止,我一直在使用以下属性来查找项目根文件夹:

<RootFolder>$(MSBuildProjectDirectory)\..\</RootFolder>

一切都运行良好,直到我尝试使用依赖于此路径的复制任务。它没有正确解决。我基本上最终得到了类似这样无效的东西:

C:\Projects\MyProject\Trunk\Build\..\CodeAnalysis\myfile.xml

所以基本上,我需要获取 (MSBuildProjectDirectory) 的父级的完整路径。

最佳答案

项目元数据是您的 friend !

<Target Name="GetMSBuildProjectParentDirectory">
<!-- First you create the MSBuildProject Parent directory Item -->
<CreateItem Include="$(MSBuildProjectDirectory)\..\">
<Output ItemName="MSBuildProjectParentDirectory" TaskParameter="Include"/>
</CreateItem>

<!-- You can now retrieve its fullpath using Fullpath metadata -->
<Message Text="%(MSBuildProjectParentDirectory.Fullpath)"/>

<!-- Create a property based on parent fullpath-->
<CreateProperty Value="%(MSBuildProjectParentDirectory.Fullpath)">
<Output PropertyName="CodeFolder" TaskParameter="Value"/>
</CreateProperty>
</Target>

关于msbuild - 查找 MSBuildProjectDirectory 父目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/514264/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com