解决tsc编译器版本过低问题
我们知道,tsc是TypeScript的编译器,可以将TypeScript脚本(.ts文件)编译为JavaScript脚本(.js文件)。根据约定,TypeScript脚本文件使用.ts后缀名,JavaScript脚本文件使用.js后缀名。tsc的作用就是把.ts脚本转变成.js脚本。
1、问题描述
突然在使用tsc编译器对.ts文件进行编译时,发现提示了如下错误:
D:\test\app.ts(2,5): error TS1005: ';' expected.
D:\test\app.ts(8,1): error TS1008: Unexpected token; 'module, class, interface, enum, import or statement' expected.

2、查找问题
经过一番问题查找,发现是tsc的版本过低造成的,版本为1.0.3.0,如下图所示:

那么问题来了,我明明全局已经安装了最新的tsc(版本为5.1.6),为什么还是1.0.3.0呢?


3、解决问题
后来进过问题的查找,终于定位到问题所在。
在环境变量的系统变量中,我们双击
Path,如下图所示:
在弹出窗口中,我们会发现有如下一行配置:
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\

然而我电脑中的NodeJS的全局配置在上述配置的下方(PS:环境变量越靠前,被使用的优先级就越优先使用),如下图所示:

既然是
NodeJS的全局配置和TypeScript1.0配置顺序优先级导致的,那么我们可以将NodeJS的全局配置上移到C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\之前不就行了,如下图所示:

验证:此时我们保存环境变量后,重新打开CMD等命令窗口,输入
tsc -v命令查看其版本号就是5.1.6最新的了,如下图所示:
针对上述通过顺序解决问题之外,我们还可以直接删除掉
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\这项环境变量配置,或者删除掉C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\中的所有文件。至于为什么会出现
C:\Program Files (x86)\Microsoft SDKs\TypeScript\1.0\这项配置,应该是我电脑上安装Visual Studio的时候自动安装的。
4、验证tsc编译器
此时我们再来使用tsc编译器将.ts文件编译为.js文件,结果就正常不报错了,如下图所示:

解决tsc编译器版本过低问题的更多相关文章
- 更新Android SDK之后Eclipse提示ADT版本过低的一个简易解决办法
首先说明一下发表这一篇博文的“历史原因”吧,因为在更新SDK之后,进入Eclipse设置Android SDK目录的时候,会突然说我的版本低什么的,尝试自己解决但失败之后,我在搜索引擎上找了很多中文的 ...
- 转:更新Android SDK之后Eclipse提示ADT版本过低的一个简易解决办法
拜GFW所赐,对于初学者的我来说,总会出现一些莫名其妙的问题 首先说明一下发表这一篇博文的“历史原因”吧,因为在更新SDK之后,进入Eclipse设置Android SDK目录的时候,会突然说我的版本 ...
- npm和node的版本过低时的解决办法
npm版本过低时的解决办法npm全名Node Package Manager 1.配置源的三种方法:1).npmrc文件的作用,就是配置npm源:使用淘宝源的方法就是在文件.npmrc中加入下面的语句 ...
- 解决selenium不支持firefox低版本的问题
解决selenium不支持firefox低版本的问题 在火狐浏览器升级后,突然发现webdriver运行脚本的时候不能调出火狐浏览器了,并报错WebDriverException:Message:'C ...
- 关于IOS新手在安装cocoa pods失败,因为ruby版本过低的解决方法+ (void) {升级ruby}
http://blog.csdn.net/zhaoen95/article/details/51995520 现在: 使用 OS 系统, 正在学习iOS 需要配置cocoapods 命令行中显 ...
- Ubuntu安装微信,解决deepin“版本过低”或NO_PUBKEY问题
在搜索引擎搜索Ubuntu安装微信,最多的结果是通过deepin安装 但是里面使用的deepin-for-ubuntu 安装之后微信扫码会提示版本过低 直接安装deepin.com.wechat_2. ...
- Ubuntu16.04+wineQQ+解决版本过低
[参考1:] http://blog.csdn.net/sinat_32079337/article/details/72771078? [参考2:] http://blog.csdn.net/qq_ ...
- RHCS 6.5 由于resource-agents-3.9.2-40.el6版本过低导致rgmanager[61164]: [fs] umount failed - REBOOTING问题的解决
問題描述: RHEL 6.5版本RHCS在disable或者relocate service的時候,會導致節點重啟,查看日誌顯示umount掛载點失敗,日誌如下: Nov 29 16:03:50 ph ...
- SQL数据库从高版本到低版本的迁移,同时解决sql脚本文件太大无法打开的尴尬问题
as we known,sql数据库高版本向低版本还原是不太可能但是又经常会碰到的事,今天实测了一种方法 步骤:任务—>生成脚本—> 下一步->高级,选择数据库版本和编写脚本数据类型 ...
- 调用sharepoint 2010 REST报版本过低
问题描述: 写了一个webservice调用sharepoint REST,本机测试成功,部署到服务器上后报错 (System.Data.Services.Client.DataServiceQuer ...
随机推荐
- (Python基础教程之十七)Python OrderedDict –有序字典
一个OrderedDict 维护插入顺序添加到字典中的项目.项目的顺序在迭代或序列化时也会保留. 1. Python OrderedDict示例 OrderedDict 是python collect ...
- Solr 学习(5) —- Solr查询语法和参数
1.查询地址 建立好solr的索引后,可以通过管理界面进行查询.http://127.0.0.1:8983/solr/admin/form.jsp 要尝试多个查询方法的话,可以进入full inter ...
- mvn eclipse:eclipse -Dwtpversion=2.0 -DdownloadSources=true -DdownloadJavadocs=true -DjdkLevel=1.6
mvn eclipse:eclipse -Dwtpversion=2.0 -DdownloadSources=true -DdownloadJavadocs=true -DjdkLevel=1.6
- elementui resetFields()不起作用
需要结合prop才有作用
- 解读vue的webpack.base.conf.js配置
'use strict' // 引入nodejs路径模块 const path = require('path') // 引入utils工具模块,utils主要用来处理css-loader和vue-s ...
- 设计模式【3.1】-- 浅谈代理模式之静态、动态、cglib代理
代理模式:为其他对象提供一种代理以控制对这个对象的访问,在某种情况下,一个对象不适合或者不能够直接引用另一个对象,而代理对象可以在客户类和目标对象之间起到中介的作用. 可以这么理解:使用代理对象,是为 ...
- 一个.NET开源、免费、功能强大的 PDF 处理工具
前言 在日常工作中PDF文档的处理往往受限于其固有的格式,使得用户在编辑.合并.剪裁等方面面临诸多不便.今天大姚给大家分享一个.NET开源.免费.功能强大的 PDF 处理工具:PDF 补丁丁(PDFP ...
- Playfair密码
Playfair密码 Playfair cipher (普莱费尔密码)一种古典对称式密码,是首个双字母替换的加密法.尽管以现在的眼光来看这种加密是非常不安全的,但是它加密的过程还是蛮有意思的. 这种加 ...
- 《前端运维》五、k8s--2pod、services与Ingress部署
前一篇啊,我们学完了基本的配置.这一篇,我们来看下服务部署的配置.我们先来看张图,理解下k8s的应用场景和调用流程: 看上图,首先,master是控制节点,负责编排.管理.调度用户提交的作业.kube ...
- 08C++选择结构(2)——教学
一.逻辑变量 教学视频 存储类似灯亮或灯灭.是男还是女等结果只有两种可能的数据时,可以使用逻辑型变量. 逻辑型变量用关键字bool定义,所以又称为布尔变量,其值只有两个false(假)和true(真) ...