检查需要配置的各选项:
sudo update-alternatives –get-selections | grep java
一个一个弄过去。
—- original —
在编译一个新5.1项目时,遇到错误:
get/product/xxx/obj/GYP/shared_intermediates/ui/gl/jni/Surface_jni.h)
Traceback (most recent call last):
File “../../base/android/jni_generator/jni_generator.py”, line 1527, in
sys.exit(main(sys.argv))
File “../../base/android/jni_generator/jni_generator.py”, line 1518, in main
GenerateJNIHeader(input_file, output_file, options)
File “../../base/android/jni_generator/jni_generator.py”, line 1401, in GenerateJNIHeader
jni_from_javap = JNIFromJavaP.CreateFromClass(input_file, options)
File “../../base/android/jni_generator/jni_generator.py”, line 652, in CreateFromClass
jni_from_javap = JNIFromJavaP(stdout.split(‘\n’), options)
File “../../base/android/jni_generator/jni_generator.py”, line 577, in __init__
self.fully_qualified_class = self.fully_qualified_class.replace(‘.’, ‘/’)
AttributeError: ‘JNIFromJavaP’ object has no attribute ‘fully_qualified_class’
make: *** [out/target/product/xxxx/obj/GYP/shared_intermediates/ui/gl/jni/Surface_jni.h] Error 1
#### make failed to build some targets (01:53:07 (hh:mm:ss)) ####
很可能是漏掉:sudo update-alternatives –config javap
没想到啊,一直用这个来切环境的,竟然藏bug了。
java6_env_init()
{
export JAVA_HOME=/usr/lib/jvm/jdk1.6.0_45
export CLASSPATH=$JAVA_HOME/lib
export PATH=$HOME/bin:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
}
java7_env_init()
{
export JAVA_HOME=/usr/lib/jvm/java-7-openjdk-amd64/
export CLASSPATH=$JAVA_HOME/lib
export PATH=$HOME/bin:$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
}
重新 sudo update-alternatives –all一把,发现不匹配的太多了。
这篇文章(http://www.codezyw.com/2014/10/30/jdkjava%E7%89%88%E6%9C%AC%E4%B8%8Eandroid%E6%BA%90%E7%A0%81%E7%BC%96%E8%AF%91%E4%B8%AD%E7%9A%84%E9%94%99%E8%AF%AF%E4%BB%A5%E5%8F%8Aupdate-alternatives-install-%E6%9C%80%E5%90%8E%E5%8F%82%E6%95%B0/)写的很全。