Egret项目Typescript的编译报错
2016-06-22 23:14
190 查看
今天编译项目,出现了一个奇怪的报错,如下:
由于报错没有给出详细的信息,只是大概的可以看出和解析代码文件进入了死循环相关,最后只能一次次回退提交来调试。
最后找到了问题的所在,这里简单的记录一下:
假设我有一个A.ts:
还有一个B.ts:
就会出现这个问题,继承的一个类如果在其他的文件中,而该文件中的类又继承了当前文件中的类就会出现这个问题。
找到问题解决方法就多了,可以添加一个C.ts把类C放入,可以将类B放入A.ts文件中,只有避免出现上面的情况即可。
E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41531 1> if (file.name.toLowerCase() in sortedMap) 1> ^ 1> RangeError: Maximum call stack size exceeded 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41531:48) 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41534:21) 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41534:21) 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41534:21) 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41534:21) 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41534:21) 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41534:21) 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41534:21) 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41534:21) 1> at insert (E:\engine\egret-core-3.1.2\tools\lib\typescript\tsclark.js:41534:21)
由于报错没有给出详细的信息,只是大概的可以看出和解析代码文件进入了死循环相关,最后只能一次次回退提交来调试。
最后找到了问题的所在,这里简单的记录一下:
假设我有一个A.ts:
class A {} class C extends B {}
还有一个B.ts:
class B extends A {}
就会出现这个问题,继承的一个类如果在其他的文件中,而该文件中的类又继承了当前文件中的类就会出现这个问题。
找到问题解决方法就多了,可以添加一个C.ts把类C放入,可以将类B放入A.ts文件中,只有避免出现上面的情况即可。
相关文章推荐
- org.I0Itec.zkclient创建客户端连接时序列化类指定问题
- 如何带好90后骚年
- Odoo开发手册-菜单项操作
- 线程问题分析
- Android init.rc文件浅析
- 如何带好90后骚年
- iOS学习——UIView圆角图片的设置方法
- HDU-2829-Lawrence-dp-斜率优化
- 非应届生还能如何获得北京户口?
- 栈
- Centos 7 搭建hadoop-2.6.0和spark1.6.0完全分布式集群教程 (最小化配置)
- 简单leetcode(五)
- APUE(4)---文件和目录 (1)
- 快乐和努力不冲突
- Host is not allowed to connect to this MySQL server
- JavaEE实战——XML文档DOM、SAX、STAX解析方式详解
- shell 之seq
- sysstat 下的系统工具
- 如何带好90后骚年
- Spring Data 系列(二) Spring+JPA入门