我有一个项目,其中所有内容都在本地编译,但无法在Azure托管构建控制器上编译。基本上,TypeScript编译失败了,如
之类的错误 Type 'any' is missing property 'create' from type '{ create: (args: any) => any; key: (args: any) => any; }'
我的代码或.csproj文件中没有任何更改,所以我知道Azure的内容已经发生了变化。
答案 0 :(得分:1)
这是MSBuild输出两个不同的版本。第一个构建工作,第二个构建(以及所有后续构建)失败。
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\tsc.exe --noImplicitAny --module amd --sourcemap --target ES5
C:\Program Files (x86)\Microsoft SDKs\TypeScript\tsc.exe --noImplicitAny --module amd --sourcemap --target ES5
注意什么?托管构建控制器现在不尊重我的"使用tsc 1.0编译"命令,只是在其TypeScript文件夹中使用任何编译器。一夜之间改变Azure,没有任何警告。
要解决此问题,我必须将我的TypeScript编译器版本与MSBuild使用的TypeScript.Targets文件一起检查到源代码控制中。关于此can be found here的更多说明。