作者:mobiledu2502928897 | 来源:互联网 | 2023-09-03 08:59
篇首语:本文由编程笔记#小编为大家整理,主要介绍了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包出错
2.解决过程
2.1最初怀疑磁盘问题,格式化磁盘/修复磁盘坏道也没用,尝试几台机器有同样的错误,排除磁盘问题。
2.2 用cocos命令行手工执行编译,编译成功,推测可能是Python执行cmd命令的BUG
2.3 找到build_android.py查看py执行cmd命令生成apk的行
修改执行,还是报一样的卷标错误,再想可能是py版本问题,换成PY2.7.14,不报卷标错误了,但是新的错误出现了,ant错误
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
2.6 补充
也可以把ant目录下的lib和bin目录下内容全部copy到ant目录下
path=%JAVA_HOME%\\bin;%ANT_HOME%;=
path不需要写%ANT_HOME%\\lib;%ANT_HOME%\\bin 了