现在的位置: 首页 > 综合 > 正文

android 如何用jar包代替java代码编译

2013年10月14日 ⁄ 综合 ⁄ 共 1101字 ⁄ 字号 评论关闭
1. 这边以frameworks\base\services\java这个模块为例子,这个模块最终编译为services.jar, 首先codebase先完整的编译一遍
2. 将out/target/common/obj/JAVA_LIBRARIES/services_intermediates目录下的文件:
        javalib.jar
        classes.jar
    放入vendor/xintong/$proj/artifacts/out/target/common/obj/JAVA_LIBRARIES/services_intermediates目录下(不存在这个目录则创建一个)
3. 将out/target/product/$proj/obj/JAVA_LIBRARIES/services_intermediates目录下的所有文件
    放入vendor/xintong/$proj/artifacts/out/target/product/$proj/obj/JAVA_LIBRARIES/services_intermediates目录下(不存在这个目录则创建一个)
4. 将out/target/product/$proj/system/framework/目录下的文件:
        services.jar
        services.odex (如果有的话)
    放入vendor/xintong/$proj/artifacts/out/target/product/$proj/system/framework/目录下(不存在这个目录则创建一个)
5. 将out/target/product/$proj/obj/NOTICE_FILE/src/system/framework/services.jar.txt
    放入vendor/xintong/$proj/artifacts/out/target/product/$proj/obj/NOTICE_FILE/src/system/framework目录下(不存在这个目录则创建一个)
6. 删除frameworks\base\services\java目录
 
其中:
1. 第4、5步有可能不存在services.jar,services.jar.txt,这种状况下不用走第4、5步,一般编译为LOCAL_JAVA_LIBRARY的需要4、5步,编译为LOCAL_STATIC_JAVA_LIBRARY的不用走第4步
2. services替换为需要用jar包代替的LOCAL_MODULE名字
3. $proj为项目名称

抱歉!评论已关闭.