在MSBuild中获取属性的已解析值

时间:2018-02-21 11:22:54

标签: msbuild

Mac上的MSBuild存在很大问题。所以我不能使用条件,因为它们很遗憾没有得到解决。 (WTF)

所以我正在努力解决这个问题,但我被困住了。基本上我不理解但想要了解的是以下内容:

<PropertyGroup>
  <PropertyA>@(SomeItemGroup)</PropertyA>
  <PropertyB>$(PropertyA)</PropertyB>
</PropertyGroup>

<Message Importance="high" Text="$(PropertyA)"/>
<Message Importance="high" Text="$(PropertyB)"/>

这个例子很好。两者都将产生ItemGroup的内容并将打印消息。

现在我有以下示例,我正在使用Transform:

<PropertyGroup>
  <PropertyA>@(SomeItemGroup->'%(SomeItem)', '')</PropertyA> => One String for List
  <PropertyB>$(PropertyA.Substring(0, 5))</PropertyB> => PropertyA does not resolve
</PropertyGroup>

<Message Importance="high" Text="$(PropertyA)"/>
<Message Importance="high" Text="$(PropertyB)"/>

第一条消息将为我提供ItemGroup的内容。但是第二条消息只会返回&#34; @(Som&#34;,因为它没有解析PropertyA。有没有机会强迫某个属性在另一个属性中解析?

0 个答案:

没有答案