跨平台各种坑,记录下这几天搞libgdx java项目转html的坑。
1.下载最新的libgdx 客户端 release 1.6.2,需要支持 jdk 1.7.0 版本。搞一个demo呗,ok,一会就成功了。android 和 html 都能成功发布,太简单了(坑总是隐藏在你不知道的地方,掉下去才知道)
2.那就把写好的libgdx core项目发布html吧....于是发现了各种坑:
A .libgdx html 是使用 gwt来支持的,所以 gwt 不支持的特性 libgdx html 也支持不了 ,比如说 多线程,比如说 java 反射机制,原本的core项目中有很多这种调用的地方。改改改。。。
B. 引用jar包 的路径找不到。libgdx 的jar 都有一个配置的xml 说明文档,我引用的protobuf jar没有,照着写一个?--没有成功。于是从github上 搞来protobuf源码,放在core目录下面。 再跑,发现 protobuf 中也用到了 java反射机制,给跪。。。。
C 在发布的过程中还发现了一些小bug 比如:Syntax error on token "Invalid Character", delete this token 找到相应的类文件,把他编码设置成us-ascii ,发现 package前面有一些乱码,删掉。重新跑还是报错。。。
D Exception IOException is not compatible with throws clause in FilterInputStream.available() 有一些 IO 相关的好像也是不支持的。
反正我最后是跪了,555555555555555555.。。。