Typescript Azure DevOps托管代理使用了错误的.njsproj类型脚本版本
我们的Typescript Azure DevOps托管代理使用了错误的.njsproj类型脚本版本,typescript,azure-devops,Typescript,Azure Devops,我们的.njsproj项目使用typescript 3.8.2。它在package.js以及.njsproj文件和3.8中定义 但是Azure DevOps代理始终对此项目使用版本4.1,然后构建失败。 对于.csproj您可以只安装适当的typescript.msbuild nuget包,但是如何设置生成代理拾取的.njsproj文件的版本 研究这个问题给了我很多不同的答案,从“不可能”到“尝试这个解决方案”,这对线程启动程序和我来说都不起作用。请参阅:Typescript有这些方法要安装 类
.njsproj
项目使用typescript 3.8.2。它在package.js
以及.njsproj
文件和3.8
中定义
但是Azure DevOps代理始终对此项目使用版本4.1,然后构建失败。
对于.csproj
您可以只安装适当的typescript.msbuild nuget包,但是如何设置生成代理拾取的.njsproj文件的版本
研究这个问题给了我很多不同的答案,从“不可能”到“尝试这个解决方案”,这对线程启动程序和我来说都不起作用。请参阅:Typescript有这些方法要安装
类型脚本NuGet包
TypeScript npm包
TypeScript SDK
在Azure Devops代理中,它只预装了Typescript 4.1(Windows-2019)。因此,当您运行管道时,默认情况下它将使用版本4.1
根据您的情况,方法3(TypeScript SDK)可以满足您的需求
您可以从以下网站下载TypeScript SDK:
下面是Powershell脚本示例:
$client = new-object System.Net.WebClient
$client.DownloadFile('https://marketplace.visualstudio.com/_apis/public/gallery/publishers/TypeScriptTeam/vsextensions/typescript-382/3.8.2/vspackage','C:/installer1.exe')
$pathvargs = {C:/installer1.exe /S /v/qn }
Invoke-Command -ScriptBlock $pathvargs
sleep -s 30
结果:
运行以下命令以检查:
Get-ChildItem -Path 'C:\Program Files (x86)\Microsoft SDKs\TypeScript' -Recurse -Directory -Force -ErrorAction SilentlyContinue | Select-Object FullName
另一方面,您可以直接从网站下载exe文件并将其上载到您的repo。然后您可以直接运行以下命令来安装它
$pathvargs = {$(build.sourcesdirectory)/TypeScript_SDK.exe /S /v/qn }
Invoke-Command -ScriptBlock $pathvargs
sleep -s 30
@穆库。您还可以尝试创建并使用来运行管道。