C# 即使输入和输出文件不同步,也未执行自定义MSBuild目标
为了检测目标的输入文件中的更改/修改,我使用以下代码,这些代码是我在增量生成上引用此MSBuild引用时编写的 所以,如果我重建它工作正常,意味着它会触发GenerateCode目标。 位如果我已经构建了项目,然后我在输入文件(test.twappid)中做了一个更改并再次构建,它不会触发GenerateCode,而是只在log in Output窗口下生成 ======生成:0成功,0失败,1最新,0跳过========== 但根据下面的文档,若输入文件时间戳比输出文件时间戳新,则会触发目标 请在下面找到相同的示例代码段C# 即使输入和输出文件不同步,也未执行自定义MSBuild目标,c#,msbuild,C#,Msbuild,为了检测目标的输入文件中的更改/修改,我使用以下代码,这些代码是我在增量生成上引用此MSBuild引用时编写的 所以,如果我重建它工作正常,意味着它会触发GenerateCode目标。 位如果我已经构建了项目,然后我在输入文件(test.twappid)中做了一个更改并再次构建,它不会触发GenerateCode,而是只在log in Output窗口下生成 ======生成:0成功,0失败,1最新,0跳过========== 但根据下面的文档,若输入文件时间戳比输出文件时间戳新,则会触发目标
<ItemGroup>
<CodeGenInput Include="D:\ TestTarget\test.twappid">
<Visible>false</Visible>
</CodeGenInput>
</ItemGroup>
<ItemGroup>
<CodeGenOutput Include="D:\ TestTarget \Code.cs">
<Visible>false</Visible>
</CodeGenOutput>
</ItemGroup>
<Target Name="GenerateCode" Inputs="@(CodeGenInput)" Outputs="@(CodeGenOutput)">
<Exec Command="generateFile.exe -In @(CodeGenInput) -Out @(CodeGenOutput)" />
</Target>
Target Name="Newtarget" BeforeTargets="BeforeBuild;BeforeReBuild" DependsOnTargets="GenerateCode">
</Target>
请检查我的示例代码,如果我做错了什么,请告诉我
PS D:\TestTarget> ls
Directory: D:\TestTarget
Mode LastWriteTime Length Name
---- ------------- ------ ----
-a---- 10-10-2020 13:50 139 Code.cs
-a---- 10-10-2020 13:54 3629 TWSchemaDesignerTool.twappid