gpt4 book ai didi

visual-studio - Visual Studio 在线构建在 TypeScript 上失败

转载 作者:搜寻专家 更新时间:2023-10-30 21:30:10 24 4
gpt4 key购买 nike

我正在 Visual Studio 在线托管服务器上构建我的项目,它说它运行的是旧版本:

PreComputeCompileTypeScriptWithTSConfig:
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.8\tsc.exe has TypeScript 2.0.6 installed.

当我尝试构建时,出现构建错误,我认为这些错误是由 --project "d:_work\9\s\Main\SRC\Portal\tsconfig.json"引起的 使用 TSConfig 编译 TypeScript: C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.8\tsc.exe --project "d:_work\9\s\Main\SRC\Portal\tsconfig.json" ##[错误]VSTSC(0,0):错误 TS5023:构建:未知的编译器选项“baseUrl”。 VSTSC:错误 TS5023:构建:未知的编译器选项“baseUrl”。 [d:_work\9\s\Main\SRC\MyProject.csproj] ##[错误]VSTSC(0,0):错误 TS5023:构建:未知的编译器选项“路径”。 VSTSC:错误 TS5023:构建:未知的编译器选项“路径”。 [d:_work\9\s\Main\SRC\MyProject.csproj] ##[错误]VSTSC(0,0):错误 TS5023:构建:未知的编译器选项“typeRoots”。 VSTSC:错误 TS5023:构建:未知的编译器选项“typeRoots”。 [d:_work\9\s\Main\SRC\MyProject.csproj] 完成构建项目“d:_work\9\s\Main\SRC\MyProject.csproj”(默认目标)——失败。 完成构建项目“d:_work\9\s\Main\Solutions\MyProject.sln”(默认目标)——失败。

我有一个指定的

<TypeScriptToolsVersion>2.0</TypeScriptToolsVersion>

在我的项目文件中,但它似乎没有被识别。我缺少什么来强制运行新的 TS 版本?这可能是由其他原因引起的吗?

更新:看来我可以降级到 1.7 并且它会识别(但明显中断),但它不会使用 2.0 - 这表明它没有安装在托管机器上。手动设置构建命令为

然后我得到错误

[error]C:\Program Files (x86)\MSBuild\Microsoft\VisualStudio\v14.0\TypeScript\Microsoft.TypeScript.targets(165,5):

Error : Your project file uses a different version of the TypeScript compiler and tools than is currently installed on this machine. No compiler was found at C:\Program Files (x86)\Microsoft SDKs\TypeScript\2.0\tsc.exe. You may be able to fix this problem by changing the element in your project file.

但是根据这个:https://www.visualstudio.com/en-us/docs/build/admin/agents/hosted-pool#software - 应该安装它(使用 Visual Studio 15),对吗?

最佳答案

测试结果和你一样,还是1.8。

请引用以下步骤来处理此问题:

  1. 添加/安装 Microsoft.TypeScript.MSBuild package到你的项目
  2. 编辑您的项目文件 (.csproj)

    a.) 配置 MSBuild 以使用 NuGet 包的 props 文件。

    <Import Project="..\packages\Microsoft.TypeScript.MSBuild.2.0.6\build\Microsoft.TypeScript.MSBuild.props" Condition="Exists('..\packages\Microsoft.TypeScript.MSBuild.2.0.6\build\Microsoft.TypeScript.MSBuild.props')" />
    <!--<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.Default.props')" />-->

    b.) 配置 MSBuild 以使用 NuGet 包的目标文件。

    <Import Project="..\packages\Microsoft.TypeScript.MSBuild.2.0.6\build\Microsoft.TypeScript.MSBuild.targets" Condition="Exists('..\packages\Microsoft.TypeScript.MSBuild.2.0.6\build\Microsoft.TypeScript.MSBuild.targets')" />
    <!--<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />-->

    如果是.Net Core 项目,将这段代码添加到.xproj 文件的部分

    <TypeScriptToolsVersion>2.0.6</TypeScriptToolsVersion>
    <TscToolPath>C:\Users\[user account]\.nuget\packages\Microsoft.TypeScript.MSBuild\2.0.6\tools\tsc</TscToolPath>

关于visual-studio - Visual Studio 在线构建在 TypeScript 上失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41230027/

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