代码之家  ›  专栏  ›  技术社区  ›  Quentin

导入元素未正确展开ItemGroup

  •  0
  • Quentin  · 技术社区  · 6 年前

    ItemGroup 对于目录基名,通过一个转换来从它们创建绝对路径并导入驻留在那里的文件。它在 Message 元素,但在 Import . 我错过了什么?

    <?xml version="1.0" encoding="utf-8"?>
    <Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
        <ItemGroup>
            <MyDependencies Include="Dir1" />
            <MyDependencies Include="Dir2" />
        </ItemGroup>
    
        <!-- "Expansion: C:\path\Dir1\import.targets;C:\some\path\Dir2\import.targets" -->
        <Target Name="TestMessage" BeforeTargets="PrepareForBuild">
            <Message
                Importance="High"
                Text="Expansion: @(MyDependencies -> 'C:\path\%(Identity)\import.targets')"
            />
        </Target>
    
    <!-- Uncomment to trigger error -->
    <!--<Import Project="@(MyDependencies -> 'C:\path\%(Identity)\import.targets')" />-->
    </Project>
    

    进口 的路径未展开并导致:

    error MSB4102: The value "@(MyDependencies -> 'C:\path\%(Identity)\import.targets')" of the "Project" attribute in element <Import> is invalid. Illegal characters in path.
    
    0 回复  |  直到 6 年前