TypeScript 1.3 for Visual Studio 2013缺少SDK目录(tsc.exe)

时间:2014-11-12 22:49:21

标签: visual-studio-2013 typescript tsc visual-studio-power-tools

Typescript v1.3是announced today,所以我安装了power tools update for VS2013

安装后我可以看到Visual Studio现在知道" protected"关键字和元组类型,这很棒!

但后来我将* .csproj文件中的TypeScriptToolsVersion属性从1.1更改为1.3:

<TypeScriptToolsVersion>1.3</TypeScriptToolsVersion>

执行此操作后,构建时出现以下错误:

  

指定的任务可执行位置&#34; C:\ Program Files   (x86)\ Microsoft SDKs \ TypeScript \ 1.3 \ tsc.exe&#34;是   无效。

文件夹&#34; 1.3&#34;尚未由安装程序创建。

作为一种解决方法,我只需制作1.1编译器的副本就能让它工作。

有谁知道为什么1.3版本文件夹未包含在此版本中?

注意:使用VS Professional 2013(12.0.30723.00 Update 3)

3 个答案:

答案 0 :(得分:7)

当前的1.3版本安装到1.1文件夹中,新项目将设置&lt; TypeScriptToolsVersion&gt;项目文件中的属性为&#34; 1.1&#34;另外(因为这个元素的值是我们附加的&#34; C:\ Program Files(x86)\ Microsoft SDKs \ TypeScript&#34;来查找编译器,所以这需要同步)。

对于编译器,我们可以并排放置多个版本(可以看到1.0和1.1文件夹),因此将使用与项目中的TypeScriptToolsVersion设置相对应的编译器版本来构建项目。我们不会自动将目标版本向前移动(为了使项目能够与那些不像你们一样前卫的大学一起进行项目往返;-)

对于Visual Studio中的语言服务,但只能存在一个版本,这将是安装的最新版本。由于我们的目标是保持向后兼容性,因此在打开较旧的项目版本时,这不会影响体验(除了允许使用旧编译器在编译时失败的新功能)。

当您打开具有早期版本的项目时,我们会发出警告,指出项目版本与语言服务不同步,这可能会发生(类似于&#34; 您的项目文件使用旧版本的此版本的Visual Studio支持的TypeScript编译器和工具。您的项目可能正在使用TypeScript语言功能,这些功能在使用此版本的TypeScript工具进行编译时会导致错误&#34;)。这是一个无害的警告,您可以继续编辑项目。如果通过指定的编译器版本不支持的语言服务添加新功能,则在构建时将发生错误(根据警告)。

它并不理想,我们正在讨论如何让它变得更好。抱歉有任何困惑。

答案 1 :(得分:3)

当我升级到TypeScript 1.3 on the tsUnit project时,变更集显示工具版本已从:

更改
<TypeScriptToolsVersion>1.0</TypeScriptToolsVersion>

<TypeScriptToolsVersion>1.1</TypeScriptToolsVersion>

因此“工具版本”与语言版本不匹配。

  • TypeScript 1.1 - &gt; ToolsVersion 1.0
  • TypeScript 1.3 - &gt; ToolsVersion 1.1

值得注意的是,语言,编译器和工具可能都有不同的版本。如果您有最新版本(截至2014年11月),请运行tsc -v查看语言版本,即版本1.3.0.0。

答案 2 :(得分:2)

  

有谁知道为什么1.3版本文件夹未包含在此版本中?

此评论澄清了这一点:https://github.com/Microsoft/TypeScript/issues/1138#issuecomment-62993605引用:

  

您应该拥有工具版本为1.1的1.3语言服务,而1.1文件夹应该包含1.3编译器。我意识到这很令人困惑