gpt4 book ai didi

typescript - 如何在 .csproj C# 项目中编译 ('build' ) 所有 TypeScript 文件?

转载 作者:行者123 更新时间:2023-12-05 01:17:17 26 4
gpt4 key购买 nike

上下文

有时我只想在标准 VS 2017 .NET 框架 C# 项目 (.csproj) 中构建/重新编译所有 TypeScript 文件,而不构建 dll 等。即使是控制台命令行解决方案,我也会很高兴。

到目前为止我做了什么:

我可以使用 MSBuild 编译所有内容:c:\>msbuild.exe my.csproj。我什至发现安装的 nuget 包 Microsoft.TypeScript.MSBuild.2.7.2 包含在我的 .csproj 中,并且定义了 CompileTypeScript 目标,但不幸的是 c:\>msbuild。 exe my.csproj -t:CompileTypeScript 返回 0 个错误,0 个警告并且什么都不做。 (据说是在错误的地方寻找 ts 文件,但没有找到) 注意:引用不存在的目标会给出信息性错误消息,因此肯定找到了目标。

问题

不管我想出了什么 MSBuild 想法,我想编译 .csproj 项目中的所有 TypeScript 文件,并使用在那里定义的相同 TypeScript 编译器设置。我怎样才能完成这项任务?

最佳答案

以下命令对我有用:

msbuild YourProject.csproj -t:CompileTypeScript -p:BuildingProject=true

Microsoft.TypeScript.targets 中的“CompileTypeScript”任务存在“BuildingProject”条件:

<Target Name="CompileTypeScript" Condition="'$(BuildingProject)' != 'false'" DependsOnTargets="$(CompileTypeScriptDependsOn)" Inputs="@(TypeScriptCompile)" Outputs="@(GeneratedJavascript)">

从本质上讲,我必须让目标认为项目确实在构建,这样它才能通过条件并执行。

请注意,我使用的是 TS 1.6,因此这可能不适用于 2.7.2。

关于typescript - 如何在 .csproj C# 项目中编译 ('build' ) 所有 TypeScript 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50852543/

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