2

渡されたすべてのプロパティが失われるため、これは問題です。

詳細説明: プロパティをプロジェクト ファイルに渡します。このプロパティは、.props ファイルへのパスです。detokenise クラスのトークンと置換値が含まれています。タスクは明らかにプロジェクトをリロードし、パスは維持されません。これは、guid タスクなどの他のタスクには当てはまらないようです。

この例では、guids.proj というタイトルのサンプル プロジェクトを使用しています。

次を使用して起動:

<MSBuild.ExtensionPack.FileSystem.Detokenise TaskAction="Detokenise" TargetFiles="@(FileCollectionToBeDetokenized )"/>

コマンドライン出力の一部は次のとおりです。

Task "MSBuild.ExtensionPack.FileSystem.Detokenise" (TaskId:11) Detokenise Task Execution Started [13:04:35] (TaskId:11) Loading Project: C:\Users\bstrausser\Desktop\guids.proj (TaskId:11) Detokenising Collection: 1 files (TaskId:11) C:\Users\*****\Desktop\guids.proj(37,9): error : Property not found: Asset Directory

完全なプロジェクト ファイル:

Project ToolsVersion="4.0" DefaultTargets="Default" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
    <Import Project="$(ParentMSBuildProjectDirectory)\Bin\MSBuild\ExtensionPack\MSBuild.ExtensionPack.tasks" Condition="Exists('$(ParentMSBuildProjectDirectory)\Bin\MSBuild\ExtensionPack\MSBuild.ExtensionPack.tasks')"/>
<Import Project="C:\Program Files (x86)\MSBuild\ExtensionPack\4.0\MSBuild.ExtensionPack.tasks" Condition="!Exists('$(ParentMSBuildProjectDirectory)\Bin\MSBuild\ExtensionPack\MSBuild.ExtensionPack.tasks') AND Exists('C:\Program Files (x86)\MSBuild\ExtensionPack\4.0\MSBuild.ExtensionPack.tasks')"/>

<PropertyGroup>
    <TPath>$(MSBuildProjectDirectory)\..\MSBuild.ExtensionPack.tasks</TPath>
    <TPath Condition="Exists('$(MSBuildProjectDirectory)\..\..\Common\MSBuild.ExtensionPack.tasks')">$(MSBuildProjectDirectory)\..\..\Common\MSBuild.ExtensionPack.tasks</TPath>
    <PROPS>$(DACP)</PROPS>
</PropertyGroup>

<Import Project="$(PROPS)" Condition="'$(DACP)' != ''" />

<Target Name="Default">
    <Message text = "$(DACP)" />
    <!-- Create a new Guid and get the formatted and unformatted values -->
    <MSBuild.ExtensionPack.Framework.Guid TaskAction="Create">
        <Output TaskParameter="FormattedGuidString" PropertyName="FormattedGuidString1" />
        <Output TaskParameter="GuidString" PropertyName="GuidStringItem" />
    </MSBuild.ExtensionPack.Framework.Guid>
    <Message Text="GuidStringItem: $(GuidStringItem)"/>
    <Message Text="FormattedGuidString: $(FormattedGuidString1)"/>
    <!-- Create a new cryptographically strong Guid and get the formatted and unformatted values -->
    <MSBuild.ExtensionPack.Framework.Guid TaskAction="CreateCrypto">
        <Output TaskParameter="FormattedGuidString" PropertyName="FormattedGuidString1" />
        <Output TaskParameter="GuidString" PropertyName="GuidStringItem" />
    </MSBuild.ExtensionPack.Framework.Guid>
    <Message Text="GuidStringItem Crypto: $(GuidStringItem)"/>
    <Message Text="FormattedGuidString Crypto: $(FormattedGuidString1)"/>

    <ItemGroup>
        <FileCollectionToBeDetokenized Include="C:\Code\MSBuildGit\Configuration\TaskExecutorConfigTransforms\App.GREEN.SCRATCH.config"/>
    </ItemGroup>

    <Message text = "BaseUrl        : $(BaseUrl)" />
    <Message text = "DetokenizedTransformFile       : @(FileCollectionToBeDetokenized)" />

    <MSBuild.ExtensionPack.FileSystem.Detokenise TaskAction="Detokenise" TargetFiles="@(FileCollectionToBeDetokenized )"/>


</Target>

4

0 に答える 0