Egret社区
最近开始对游戏的UI控件产生兴趣,主要是发现很多游戏除了游戏界面外,还有很多像设置,装备管理和购买等界面,这些界面除了皮肤外,和普通APP并没有不同,而多数游戏引擎都不重视UI控件部分,开发者不得不花很多时间去做这些工作。所以近段时间为cocos2d-html5, pixi.js,panda.js和phaser.js等开发了UI控件库和UI Builder。

昨天发现了egret,感觉非常棒,而且她对UI控件很重视,所以想给egret开发一个UI Builder。一直在linux下工作,所以尝试在linux下建立egret的开发环境,理论上这个很简单,安装node.js, typescript,egret和XAMPP都很顺利,相信任何一个在linux下工作的人都能搞定。

安装很顺利,但是创建项目出现麻烦了。

[root@mobile egret]# egret create helloworld
/usr/lib/node_modules/egret/src/extension/gui/components/ViewStack.ts(39,50): error TS2095: Could not find symbol 'IViewStack'.

加一个-v参数再运行,发现创建项目成功了,但编译失败了。

[root@mobile egret]# egret create helloworld -v
正在创建新项目文件夹...
正在生成egret_file_list...
正在编译egret...
/usr/lib/node_modules/egret/src/extension/gui/components/ViewStack.ts(39,50): error TS2095: Could not find symbol 'IViewStack'.


我发现/usr/lib/node_modules/egret/src/extension/gui/core/IViewStack.ts文件是存在的,为什么找不到呢?

先怀疑是路径设置的问题,于是去看egret命令的实现,在compile.js的compile函数里找到了调用tsc的代码,然后把调用命令行打印出来, 发现IViewStack.ts写成了IViewstack.ts。我一下明白了,Linux下文件名是大小写敏感的!

很快发现文件名是写在tools/lib/manifest/core.json里的,把extension/gui/core/IViewstack.ts 改成extension/gui/core/IViewStack.ts,重新运行:

[root@mobile egret]# egret create helloworld -v
正在创建新项目文件夹...
正在生成egret_file_list...
正在编译egret...
正在导出 egret.d.ts...
.d.ts文件导出成功
正在编译项目...
创建成功





分享到 :
0 人收藏

8 个回复

倒序浏览
Wander  官方团队 | 2014-7-26 12:12:33
非常感谢!!!这个问题我们立刻修复
dom  圆转纯熟 | 2014-7-26 12:17:46
楼主太牛了。。。这么隐秘的bug都分析出来了。
lixianjing  登堂入室 | 2014-7-26 13:10:19
egret真的不错,接下我要花大力气去研究,希望能做些贡献。
Wander  官方团队 | 2014-7-26 13:30:51
lixianjing 发表于 2014-7-26 13:10
egret真的不错,接下我要花大力气去研究,希望能做些贡献。

楼主请加我 QQ 185713114
john.berry  初学乍练 | 2014-7-26 17:04:51
刚好遇到这个问题 ,感谢
usual2970  初学乍练 | 2014-7-29 11:12:45
本帖最后由 usual2970 于 2014-7-29 11:14 编辑

我在linux下,导出egret.d.ts的时候失败了,怎么解
QQ五笔截图未命名.png
lixianjing  登堂入室 | 2014-7-29 11:19:52
没玩过,导出是指什么?出现什么错误?
lixianjing  登堂入室 | 2014-7-29 17:33:06
export LANG=zh_CN.UTF-8
再运行,看看错误信息。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|京网文[2014]0791-191号|京ICP证150115号|Egret社区 ( 京ICP备14025619号 )

Powered by Discuz! X3.4 © 2001-2019 Comsenz Inc.

返回顶部