Msbuild TeamCity:错误TS1148生成类型脚本模块
我正在尝试将typescript模块添加到构建中。该解决方案可以从IDE、命令行上的MSBuild甚至Visual Studio Online上很好地构建。但是,当我在TeamCity中构建时,会出现以下错误:Msbuild TeamCity:错误TS1148生成类型脚本模块,msbuild,typescript,teamcity,Msbuild,Typescript,Teamcity,我正在尝试将typescript模块添加到构建中。该解决方案可以从IDE、命令行上的MSBuild甚至Visual Studio Online上很好地构建。但是,当我在TeamCity中构建时,会出现以下错误: C:\TeamCity\buildAgent\work\cbd612042b438c8c\web\LobApp\CatBallBusinessWeb\Scripts\PurchaseOrderModule.ts(2, 15): error TS1148: Build: Cannot c
C:\TeamCity\buildAgent\work\cbd612042b438c8c\web\LobApp\CatBallBusinessWeb\Scripts\PurchaseOrderModule.ts(2, 15): error TS1148: Build: Cannot compile modules unless the '--module' flag is provided.
显然,TeamCity构建没有选择正确的typescript.targets文件。“C:\Program Files(x86)\msbuild\Microsoft\VisualStudio\v14.0\TypeScrip\Microsoft.TypeScript.targetst”中的下一行是应用--module编译器标志的位置
<TypeScriptBuildConfigurations Condition="'$(TypeScriptModuleKind)' != '' and '$(TypeScriptModuleKind)' != 'none'">$(TypeScriptBuildConfigurations) --module $(TypeScriptModuleKind)</TypeScriptBuildConfigurations>
$(TypeScriptBuildConfiguration)——模块$(TypeScriptModuleKind)
在相关项目结算中,在“TypeScript构建”下,我选择了“AMD”模块系统。。这应该会触发上面的线
TeamCity生成日志与我从以下命令行使用MSBuild编译时看到的生成日志不同:
团队城市:
[18:15:07]:[web\LobApp\CatBallBusinessWeb\CatBallBusinessWeb.csproj]
预计算CompileTypeScript[18:15:07]:[PreComputeTypeScript]
使用程序集“C:\Program Files”中的“VsTsc”任务
(x86)\MSBuild\Microsoft\VisualStudio\v14.0\TypeScript\TypeScript.tasks.dll”。
[18:15:07]:[PrecomputeTypeScript]VsTsc[18:15:07]:[VsTsc]
任务参数:ToolPath=C:\Program Files(x86)\Microsoft
SDKs\TypeScript[18:15:07]:[VsTsc]任务参数:ToolExe=tsc.exe
[18:15:07]:[VsTsc]任务参数:配置=--sourcemap
--目标ES5--仅计算NOEMITONERRON路径[18:15:07]:[VsTsc]任务参数:
完整路径文件=
区域\Manage\Scripts\PurchaseOrderModule.ts
脚本\App\Purchase\PurchaseOrderEdit.ts
脚本\PurchaseOrderModule.ts
脚本\PurchaseOrderIndex.ts
脚本\typings\jquery\jquery.d.ts
脚本\typings\knockout.mapping\knockout.mapping.d.ts
脚本\typings\knockout.validation\knockout.validation.d.ts
脚本\typings\knockout\knockout.d.ts
脚本\typings\moment\moment-node.d.ts
脚本\typings\moment\moment.d.ts
Vs.MSBuild命令行:
目标是文件“C:\Program Files”中的“预计算编译器脚本”
(x86)\MSBuild\Microsoft\VisualStudio\v14.0\TypeScript\Microsoft.TypeScript.targets”
从项目
“D:\dev\web\lobapp\CatBallBusinessWeb\CatBallBusinessWeb.csproj”
(目标“CompileTypeScript”取决于它):使用来自的“VsTsc”任务
程序集“C:\程序文件
(x86)\MSBuild\Microsoft\VisualStudio\v14.0\TypeScript\TypeScript.tasks.dll”。
任务“VsTsc”任务参数:刀具路径=C:\Program Files
(x86)\Microsoft SDK\TypeScript任务参数:ToolExe=tsc.exe任务参数:Configurations=--module AMD--sourcemap--target ES5 --NOEMITO错误仅计算路径任务参数: 完整路径文件= 区域\Manage\Scripts\PurchaseOrderModule.ts 脚本\App\Purchase\PurchaseOrderEdit.ts 脚本\PurchaseOrderModule.ts 脚本\PurchaseOrderIndex.ts 脚本\typings\jquery\jquery.d.ts 脚本\typings\knockout.mapping\knockout.mapping.d.ts 脚本\typings\knockout.validation\knockout.validation.d.ts 脚本\typings\knockout\knockout.d.ts 脚本\typings\moment\moment-node.d.ts 脚本\typings\moment\moment.d.ts TeamCity日志中缺少突出显示的部分 在TeamCity,我直接构建解决方案。。在其他地方都能建得很好。我选择了Visual Studio 2015工具。我还应该提到,这个解决方案是从TeamCity工作目录的命令行构建的 我不是构建、团队城市或打字专家。所以我不知道如何进一步调查。我怎样才能知道为什么没有运行正确的目标文件?考虑到这在其他地方都能很好地构建,我觉得这是一个TeamCity bug。另一方面,我无法想象TeamCity如何错误地运行MSBuild 谢谢你的帮助