博客
关于我
android源码环境下编译fourthling.cling库的依赖问题
阅读量:689 次
发布时间:2019-03-16

本文共 1269 字,大约阅读时间需要 4 分钟。

建立从源头开始的解决方案来处理fourthline.cling在Android上的静态库编译问题,可以分为以下步骤:

  • 了解依赖关系并准备knife :首先,确保在Android的源码环境中预制所有必要的JAR文件。编辑LOCAL_STATIC_JAVA_LIBRARIES,确保包含了 BUILD_STATIC_JAVA_LIBRARY 相关的 .mk 文件。例如,在你的项目根目录下找到相应的文件,进行适当的修改。

  • 处理javax依赖问题:Android环境不支持直接使用javax包,因此需要引入cdi-api-2.0的JAR包,这个包包含了如javax.decorator.Decorator等类。确保这个JAR已经添加在LOCAL_STATIC_JAVA_LIBRARIES中,并未被遗漏或权限错误阻止。

  • 修复编译错误:当你在编译fourthling.cling时遇到如“第四ling.cling (java:sdk) 不应链接到cdi-api (java:platform)”的错误,说明SDK接口不能够链接到平台级别的依赖。为了修复这个错误,在Android.mk文件中将 LOCAL_SDK_VERSION := current 替换为 LOCAL_PRIVATE_PLATFORM_APIS := true。这样编译器允许链接到这些私有接口。

  • 处理编译警告:当你看到如“can't find referenced class javax.el.ExpressionFactory”等警告时,首先确认这些警告是否影响程序的正常运行。如果它们不会导致程序崩溃或其他严重问题,可以通过创建proguard.flags文件来过滤这些警告:

    # 在项目根目录下创建proguard.flags-dontnote org.fourthline.cling.*-dontwarn org.eclipse.jetty.jmx.*-dontwarn javax.el.*

    然后在Android.mk文件中添加LOCAL_PROGUARD_FLAG_FILES := proguard.flags,这样ProGuard会忽略这些警告,继续编译。

  • 确保缺失的类不会影响运行:如果这些缺失的类确实会导致程序崩溃或功能缺失,需要额外引入相关的JAR包。例如,添加javax.el.jakarta或其他包含必要类的库,确保所有依赖都已满足。

  • 验证编译环境:在编译fourthline.cling之前,执行以下命令确保环境正确:

    source build/envsetup.sh

    这将设置必要的环境变量,确保后续步骤顺利执行。

  • 在编译时检查日志:编译完成后,仔细检查日志,确保没有遗漏的依赖错误或其他潜在问题。如果发现新的依赖问题,逐步解决,确保所有必要的库都已正确添加和配置。

  • 通过以上步骤,你应该能够解决fourthline.cling在Android编译中的静态库依赖问题。这些方法可以帮助你避开常见的编译错误,并通过合理的配置确保程序的稳定性。

    转载地址:http://bbeqz.baihongyu.com/

    你可能感兴趣的文章
    OpenCV与AI深度学习 | 基于Python和OpenCV将图像转为ASCII艺术效果
    查看>>
    OpenCV与AI深度学习 | 基于PyTorch实现Faster RCNN目标检测
    查看>>
    OpenCV与AI深度学习 | 基于PyTorch语义分割实现洪水识别(数据集 + 源码)
    查看>>
    OpenCV与AI深度学习 | 基于YOLO11的车体部件检测与分割
    查看>>
    OpenCV与AI深度学习 | 基于YOLOv8的停车对齐检测
    查看>>
    OpenCV与AI深度学习 | 基于机器视觉的磁瓦表面缺陷检测方案
    查看>>
    OpenCV与AI深度学习 | 实战 | 使用YoloV8实例分割识别猪的姿态(含数据集)
    查看>>
    Opencv中KNN背景分割器
    查看>>
    OpenCV中基于已知相机方向的透视变形
    查看>>
    opencv之namedWindow,imshow出现两个窗口
    查看>>
    opencv之模糊处理
    查看>>
    opencv保存图片路径包含中文乱码解决方案
    查看>>
    opencv图像分割2-GMM
    查看>>
    opencv图像分割3-分水岭方法
    查看>>
    OpenCV学习(13) 细化算法(1)(转)
    查看>>
    OpenCV探索
    查看>>
    opencv笔记(1):图像缩放
    查看>>
    OpenCV(1)读写图像
    查看>>
    OpenCV:概念、历史、应用场景示例、核心模块、安装配置
    查看>>
    Openlayers Source基础及重点内容讲解
    查看>>