错误一:javap未指向有效的java版本
Traceback (most recent call last):
File"../../base/android/jni_generator/jni_generator.py", line 1065, in sys.exit(main(sys.argv))
File"../../base/android/jni_generator/jni_generator.py", line 1061, inmain
options.optimize_generation)
File"../../base/android/jni_generator/jni_generator.py", line 996, inGenerateJNIHeader
jni_from_javap=JNIFromJavaP.CreateFromClass(input_file, namespace)
File"../../base/android/jni_generator/jni_generator.py", line 507, inCreateFromClass
stderr=subprocess.PIPE)
File"/usr/lib/python2.7/subprocess.py", line 709, in __init__errread, errwrite)
File"/usr/lib/python2.7/subprocess.py", line 1326, in_execute_childraisechild_exception
OSError: [Errno2] No such file ordirectory
make:*** [/home/odexcide/android-4./out/target/product/generic/obj/GYP/shared_intermediates/ui/gl/jni/Surface_jni.h] Error 1make:*** Waiting for unfinished jobs..
原因 javap不存在于环境变量中
使用 sudo update-alternatives --config javap
查看指向,选择合适的版本,如果不存在,则添加javap
sudo update-alternatives --install /usr/bin/javap
javap /usr/lib/jvm/jdk1.6.0_45/bin/javap 300
配置 sudo update-alternatives --config javap 注:如果只有一个可选的话,则不会列表,即无需处理
错误二Chromium gyp HashSet_jni.h
out/target/product/mx3/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:10:26: error: extra tokens at end of #ifndef directive [-Werror]
out/target/product/mx3/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:11:26: error: missing whitespace after the macro name [-Werror]
target thumb C++: content_content_common_gyp <= external/chromium_org/content/common/android/surface_texture_peer.cc
In file includedfrom external/chromium_org/content/common/android/hash_set.cc:5:0:
out/target/product/mx3/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:24:20: error: expected initializer before ‘
out/target/product/mx3/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:26:17: error: expected initializer before ‘
out/target/product/mx3/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:29:22: error: expected ‘{‘ before ‘
out/target/product/mx3/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:29:22: error: expected unqualified-id before ‘
external/chromium_org/content/common/android/hash_set.cc:30:1: error: expected ‘}‘at end of input
cc1plus: all warnings being treated as errors
make:*** [out/target/product/mx3/obj/STATIC_LIBRARIES/content_content_common_gyp_intermediates/content/common/android/hash_set.o] 错误 1make:*** 正在等待未完成的任务....
这可能是由于java版本不符,请安装相应版本的jdk。
此外, 如果尚未解决,可参考此帖进行修改源码,本人不建议
原文:http://www.cnblogs.com/rainduck/p/3718227.html