gpt4 book ai didi

visual-studio - MSBuild 复制或创建文件(如果不存在)

转载 作者:行者123 更新时间:2023-12-02 18:25:39 25 4
gpt4 key购买 nike

我有一个简单的要求,即在项目目录中创建一个名为 user.config 的文件,但前提是该文件尚不存在。

第一次尝试:

  <Target Name="BeforeBuild">
<ItemGroup>
<Line Include="line01"><Text>&lt;appSettings&gt;&lt;/appSettings&gt;</Text></Line>
<LineText Include="%(Line.Text)" />
</ItemGroup>
<WriteLinesToFile File="user.config" Lines="@(LineText)" Overwrite="false" />
</Target>

不起作用,因为它附加到文件

第二次尝试:

  <Target Name="BeforeBuild">
<CreateItem Include="user_example.config">
<Output ItemName="ItemsThatNeedToBeCopied" TaskParameter="Include" />
</CreateItem>
<Copy SourceFiles="@(ItemsThatNeedToBeCopied)" DestinationFolder="$(ProjectDir)" Condition="!Exists('%(RootDir)%(Directory)%(Filename)%(Extension)')" />
</Target>

不起作用,因为似乎什么也没发生,并且详细的 msbuild 输出中没有任何内容告诉我任何原因

任何 MSBuild 专家都应该很容易看出我做错了什么......

最佳答案

第一次尝试几乎是执行此操作的规范方法,除了缺少条件(每个 MsBuild 任务都支持)之外,您基本上得到了正确的方法:

<WriteLinesToFile File="user.config" Lines="@(LineText)" Overwrite="True"
Condition="!Exists('user.config')"/>

关于visual-studio - MSBuild 复制或创建文件(如果不存在),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42854860/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com