.targets文件中的appendTargetFrameworkToOutputPath失败
财产
AppendTargetFrameworkToOutputPath
未能停止msbuild追加
TargetFramework
到
OutputPath
,但因为
目标框架
创建项目时已生成文件夹,
我们需要手动删除targetframework文件夹
在添加
<Import Project="PathToCommonTargets" />
到项目,否则该文件夹将始终存在,然后我们可以在没有
目标框架
到
输出路径
.
如果
目标框架
文件夹删除后仍会生成,应将
.targets
并且import语句是正确的。为了确保它们,我在
.target
文件:
<?xml version="1.0" encoding="utf-8"?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
</PropertyGroup>
<Target Name="Test" AfterTargets="Build">
<Message Text="This is Test Custom Target!"></Message>
</Target>
</Project>
当我们构建项目时,我们可以在输出窗口中看到消息信息,这意味着
目标
并且import语句是正确的。
更新:
你能帮我删除targetframework吗?
要完成此任务,请卸载项目。然后在项目的最后,就在结束标记之前
</project>
,放置在脚本下面:
<Target Name="RemoveDirectories" AfterTargets="Build">
<RemoveDir
Directories="$(ProjectDir)$(OutDir)" />
</Target>
另外,你需要备份
目标框架
到bin\debug或bin\release文件夹,因此我们还需要在删除任务之前复制任务:
<ItemGroup>
<MySourceFiles Include="$(ProjectDir)$(OutDir)\*.*"/>
</ItemGroup>
<Copy
SourceFiles="@(MySourceFiles)"
DestinationFolder="$(ProjectDir)bin\$(ConfigurationName)"
/>
<RemoveDir
Directories="$(ProjectDir)$(OutDir)" />
希望这有帮助。