2017-06-13 61 views
0

TeamCity Enterprise 2017.1(構建46533)構建失敗 - 與Visual Studio 2017 Pro構建正常。TeamCity構建由於TypeScript而失敗 - TS2304和TS7006

構建步驟中的TeamCity:

NuGet Installer 
Node.js NPM 
Visual Studio (sln) -> Set for Microsoft Visual Studio 2017 

獲取即使它建立在我的本地機器上的細微這些錯誤。我有"noImplicitAny": true.tsconfig並且不想改變它關於TS7006。我如何在TeamCity中得到這些錯誤,但在我的本地機器上卻沒有?

完全錯誤日誌:https://pastebin.com/Wj0f7pXr

我有一個與TS2304: Build:Cannot find name 'object'.最後兩個錯誤的想法。它說,在日誌中:在TypeScript 2.2加入

[10:36:35] [VsTsc] C:\Program Files (x86)\Microsoft SDKs\TypeScript\2.1\tsc.exe --project "T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\tsconfig.json" --listEmittedFiles

對象,但它仍然無法解釋其他錯誤。從構建服務器

https://www.typescriptlang.org/docs/handbook/release-notes/typescript-2-2.html

打字稿信息:

C:\Users\COMPANY-BUILD-01>tsc --version 
Version 2.3.4 

C:\Users\COMPANY-BUILD-01>where tsc 
C:\Users\COMPANY-BUILD-01\AppData\Roaming\npm\tsc 
C:\Users\COMPANY-BUILD-01\AppData\Roaming\npm\tsc.cmd 

編譯錯誤(1):

T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(47, 9): error TS2304: Build:Cannot find name 'fetch'. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(47, 40): error TS7006: Build:Parameter 'response' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(49, 18): error TS7006: Build:Parameter 'aboutModel' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(52, 9): error TS2304: Build:Cannot find name 'fetch'. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(52, 40): error TS7006: Build:Parameter 'response' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(54, 18): error TS7006: Build:Parameter 'factsModel' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(57, 9): error TS2304: Build:Cannot find name 'fetch'. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(57, 43): error TS7006: Build:Parameter 'response' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(59, 18): error TS7006: Build:Parameter 'sidePaneModel' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(62, 9): error TS2304: Build:Cannot find name 'fetch'. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(62, 41): error TS7006: Build:Parameter 'response' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(64, 18): error TS7006: Build:Parameter 'footerModel' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(67, 9): error TS2304: Build:Cannot find name 'fetch'. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(67, 42): error TS7006: Build:Parameter 'response' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(69, 18): error TS7006: Build:Parameter 'optionsModel' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(72, 9): error TS2304: Build:Cannot find name 'fetch'. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(72, 44): error TS7006: Build:Parameter 'response' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\App.tsx(74, 18): error TS7006: Build:Parameter 'contactModel' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\Inventory\index.tsx(24, 9): error TS2304: Build:Cannot find name 'fetch'. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\Inventory\index.tsx(24, 44): error TS7006: Build:Parameter 'response' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\Features\Client\Inventory\index.tsx(26, 18): error TS7006: Build:Parameter 'inventory' implicitly has an 'any' type. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\node_modules\@types\react-router\index.d.ts(82, 23): error TS2304: Build:Cannot find name 'object'. 
T:\TeamCity\buildAgent\work\603ae47e37445f5d\Project\Project.Web\node_modules\@types\react-router\index.d.ts(83, 13): error TS2304: Build:Cannot find name 'object'. 

回答

1

經過VS開發命令提示:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>tsc --version 
Version 2.1.5 

然後我嘗試從VSScript 17的TypeScripts主頁下載最新版本,但它仍顯示相同的結果。

https://www.typescriptlang.org/index.html#download-links

我然後開發服務器上啓動Visual Studio中 - >工具 - >擴展和更新... - >產品更新 - >安裝最新的Visual Studio更新。對我來說這是Visual Studio Update 15.2 (26430.13)

該版本將TypeScript碰撞到2.2.3並解決了所有錯誤。

********************************************************************** 
** Visual Studio 2017 Developer Command Prompt v15.0.26430.13 
** Copyright (c) 2017 Microsoft Corporation 
********************************************************************** 

C:\Program Files (x86)\Microsoft Visual Studio\2017\Community>tsc -v 
Version 2.2.3 
相關問題