当前位置: 首页 > article >正文

Android12上新增jar遇到的问题总结

最近在vendor目录下新增jar遇到一个问题,新增jar完全没问题,但是如果在framework/base/service下通过static_lib调用,就会出现如下报错,在SystemUI中调用都不会出现此问题,这个问题应该就是出现在framework/base/service这个目录下调用才导致的。

error: frameworks/base/services/Android.bp:82:1: module "services" variant "android_common": non-optimal order of jars on the system server classpath: 'services' precedes its dependency 'xxx', so dexpreopt is unable to resolve any references from 'services' to 'xxx'.

我尝试了好几种方法

1. 将我这个jar目录移动到framework/base/service下,也是同样的报错,且我未修改我的任何代码。

2. 在framework/base/service下创建目录,将我的jar移动到这下面,参考其他bp的写法,如下所示,就可以编译成功了。

package {
    // See: http://go/android-license-faq
    // A large-scale-change added 'default_applicable_licenses' to import
    // all of the 'license_kinds' from "frameworks_base_license"
    // to get the below license kinds:
    //   SPDX-license-identifier-Apache-2.0
    default_applicable_licenses: ["frameworks_base_license"],
}

filegroup {
    name: "services.searchui-sources",
    srcs: ["java/**/*.java"],
    path: "java",
    visibility: ["//frameworks/base/services"],
}

java_library_static {
    name: "services.searchui",
    defaults: ["platform_service_defaults"],
    srcs: [":services.searchui-sources"],
    libs: ["services.core"],
}

2的结果就是不会有单独的jar生成到out下的system/framework下,只会有中间编译产物的jar生成,但由于这个也满足我的需求,就用这个方式了。

算是曲线救国了吧😂

 

 


http://www.kler.cn/news/290690.html

相关文章:

  • fedora siliverblue adb
  • 为虚拟机配置固定的IP地址(CentOS9)
  • c++162 类的封装和访问
  • 转载【FIR 线性相位系统 最小相位系统 滤波器延迟】
  • 使用Dbeaver 操作 mongodb
  • 「小明赠书活动」第五期“网安三剑客”套系图书《内网渗透技术》《渗透测试技术》《Web应用安全》
  • Luminar Neo for Mac智能图像处理软件【操作简单,轻松上手】
  • LeetCode 热题100-11 滑动窗口的最大值
  • 前端防抖和节流函数的实现原理
  • MFC的控件无法触发事件函数(ON_COMMAND_RANGE的映射范围冲突)
  • 百度翻译API翻译Qt LinguistTools的ts文件
  • 百度飞浆目标检测PPYOLOE模型在PC端、Jetson上的部署(python)
  • React 创建和嵌套组件
  • 策略规划:在MySQL中实现数据恢复的全面指南
  • [Python图论]在用图nx.shortest_path求解最短路径时,节点之间有多条边edge,会如何处理?
  • 【MySQL】索引使用规则——(覆盖索引,单列索引,联合索引,前缀索引,SQL提示,数据分布影响,查询失效情况)
  • Proteus 仿真设计:开启电子工程创新之门
  • Unity3D中控制3D场景中游戏对象显示层级的详解
  • 构建数据恢复的硬件基础:MySQL中的硬件要求详解
  • draw.io图片保存路径如何设置
  • linux(ubuntu)安装QT-ros插件
  • Ferrari求解四次方程
  • VTK随笔十三:QT与VTK的交互
  • jupyter 笔记本中如何判定bash块是否执行完毕
  • CentOS7 yum 报错解决方案
  • FFmpeg源码:get_audio_frame_duration、av_get_audio_frame_duration2函数分析
  • Splasthop 安全远程访问帮助企业对抗 Cobalt Strike 载荷网络攻击
  • 鸿蒙(API 12 Beta6版)图形【NativeImage开发指导 (C/C++)】方舟2D图形服务
  • git---gitignore--忽略文件
  • 【C++】对比讲解构造函数和析构函数