Android 中的 JAR 相互依赖关系
我有一个 Android 应用程序,可以在运行时从外部 JAR 读取一些类。我正在使用 PathClassLoader。
我遇到 JAR 中的类依赖于其他 JAR 中的内容的实例化异常。在Android中,我找不到任何方法来为有效的类加载器添加多个源,将类加载器作为子加载器和父加载器链接在一起似乎也不起作用。
我可以将所有类移动到一个 JAR 中进行部署,或者在运行时解压所有类,但是如果我能找到一些更方便、更少“暴力”的方法来解决这个问题,那就更好了。
预先感谢您提供任何信息。
I have an android app that reads some classes from external JARs at runtime. I am using the PathClassLoader.
I'm getting an instantiation exception with classes in JARs that depend on things in other JARs. In Android I can't find any way to add multiple sources for a classloader that works, nor does chaining the classloaders together as child and parent seem to work.
I could move all the classes into one JAR for my deployment, or maybe unpack all the classes at runtime, however it would be far better if I could find some more convenient and less 'brute force' way to solve this.
Thanks in advance for any info.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
考虑到android的dalvik VM与java的VM不同。
检查 这个问题。
在 Android 应用程序中,您将所有 jar 放在
/lib/
中,编译器会负责将它们正确放置在dex
文件中。Take into account that android's dalvik VM is not the same as the java one.
Check this question.
In an Android application you place all your jars in
/lib/
and the compiler will take care of placing them correctly in thedex
file.