想把android源码frameworks/base/packages/SettingsLib下的源码编译成 settinglib.jar,编译完后,在out/target/common/obj/JAVA_LIBRARIES/SettingsLib_intermediates发现是class.jack,没有jar包,解决方案如下:
1.AOSP如何编译生成java包
1.Android.mk中将#include $(BUILD_JAVA_LIBRARY)等 改为include $(BUILD_STATIC_JAVA_LIBRARY)
2.在Android.mk中增加 LOCAL_JACK_ENABLED := disabled
3. mm编译后在out/target/common/obj/JAVA_LIBRARIES/$(LOCAL_MODULE)_intermediates中找到classes.jar即是。
2.如果该方式出现了问题,还是解决不了。那你可以尝试直接使用最终解决方案。
找到源码下该文件:
/build/core/combo/javac.mk
//将下面的配置设置为false;
ANDROID_COMPILE_WITH_JACK := false
重新构建会在out/target/common/obj/JAVA_LIBRARIES/xxxx_intermediates再次生成classes.jar