標籤:android style blog class code java
錯誤一:javap未指向有效java版本
Traceback (most recent call last): File "../../base/android/jni_generator/jni_generator.py", line 1065, in <module> sys.exit(main(sys.argv)) File "../../base/android/jni_generator/jni_generator.py", line 1061, in main options.optimize_generation) File "../../base/android/jni_generator/jni_generator.py", line 996, in GenerateJNIHeader jni_from_javap = JNIFromJavaP.CreateFromClass(input_file, namespace) File "../../base/android/jni_generator/jni_generator.py", line 507, in CreateFromClass 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_child raise child_exceptionOSError: [Errno 2] No such file or directorymake: *** [/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.ccIn file included from 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 ‘<‘ tokenout/target/product/mx3/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:26:17: error: expected initializer before ‘<‘ tokenout/target/product/mx3/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:29:22: error: expected ‘{‘ before ‘<‘ tokenout/target/product/mx3/obj/GYP/shared_intermediates/content/jni/HashSet_jni.h:29:22: error: expected unqualified-id before ‘<‘ tokenexternal/chromium_org/content/common/android/hash_set.cc:30:1: error: expected ‘}‘ at end of inputcc1plus: all warnings being treated as errorsmake: *** [out/target/product/mx3/obj/STATIC_LIBRARIES/content_content_common_gyp_intermediates/content/common/android/hash_set.o] 錯誤 1make: *** 正在等待未完成的任務....
這可能是由於java版本不符,請安裝相應版本的jdk。
此外, 如果尚未解決,可參考此帖進行修改源碼,本人不建議