Cocos2dx 3.10版编译安卓报卷标错误

人生处万类,知识最为贤。这篇文章主要讲述Cocos2dx 3.10版编译安卓报卷标错误相关的知识,希望能为你提供帮助。
 
环境:
Java-sdk 1.7
Python2.7
Cocos2dx-3.10
Lua5.1
VC++2005-2013
Ant 1.10.1
android-ndk-r10d
 
1.错误截图
C++编译完成,生成apk包出错
 

Cocos2dx 3.10版编译安卓报卷标错误

文章图片

2.解决过程
2.1最初怀疑磁盘问题,格式化磁盘/修复磁盘坏道也没用,尝试几台机器有同样的错误,排除磁盘问题。
2.2 用cocos命令行手工执行编译,编译成功,推测可能是python执行cmd命令的BUG
 
Cocos2dx 3.10版编译安卓报卷标错误

文章图片

2.3 找到build_android.py查看py执行cmd命令生成apk的行
 
Cocos2dx 3.10版编译安卓报卷标错误

文章图片

修改执行,还是报一样的卷标错误,再想可能是py版本问题,换成PY2.7.14,不报卷标错误了,但是新的错误出现了,ant错误
 
 
Cocos2dx 3.10版编译安卓报卷标错误

文章图片

2.4排查ant错误
环境检查:
ANDROID_SDK
C:\\Android\\sdk\\adt\\sdk\\platforms; C:\\Android\\sdk\\adt\\sdk\\platform-tools; C:\\Android\\sdk\\adt\\sdk\\tools
 
ANDROID_SDK_ROOT
C:\\Android\\sdk\\adt\\sdk
 
ANT_HOME
C:/Android/ant
 
java_HOME
C:/Android/jdk1.7.0_80
CLASSPATH
.; %JAVA_HOME%/lib/dt.jar; %JAVA_HOME%/lib/tools.jar
 
网上查了很多资料,
典型的解决办法有:
1.
ANT_HOME=C:/Android/ant/bin
PATH=%JAVA_HOME%\\bin; %ANT_HOME%;
Cmd 输入ant-h报ANT_HOME没有设置
2.
ANT_HOME=C:/Android/ant
PATH=%JAVA_HOME%\\bin; %ANT_HOME%\\bin;
Cmd 输入ant-h报java的main方法异常
以上2种方法有很多人采用,说能顺利解决,
 
最后猜测ant调用了它lib下面的jar包,在path里面引用一下
%JAVA_HOME%\\bin; %ANT_HOME%\\lib; %ANT_HOME%\\bin;
Cmd输入ant -h 正常了
 
2.5再一次编译生成apk
Cocos2dx 3.10版编译安卓报卷标错误

文章图片

 
2.6 补充
【Cocos2dx 3.10版编译安卓报卷标错误】也可以把ant目录下的lib和bin目录下内容全部copy到ant目录下
path=%JAVA_HOME%\\bin; %ANT_HOME%; =
path不需要写%ANT_HOME%\\lib; %ANT_HOME%\\bin 了
 

    推荐阅读