我可以在同一个项目中使用RxAndroidBle和RxJava2吗?(Can I Use RxAndroidBle and RxJava2 in the same project?)

编程入门 行业动态 更新时间:2024-10-14 22:15:49
我可以在同一个项目中使用RxAndroidBle和RxJava2吗?(Can I Use RxAndroidBle and RxJava2 in the same project?)

我有一个依赖于RxAndroid的Android应用程序(基于RxJava2)。 我还添加了仍然使用RxJava1的RxAdnroidBle依赖项 。

在编译期间,我遇到以下错误:

Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'. > com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/rxjava.properties File1: /home/eddy/.gradle/caches/modules-2/files-2.1/io.reactivex.rxjava2/rxjava/2.1.0/2fdf84dedcaaeabb9d70cde9dbb8aad4eccb80a1/rxjava-2.1.0.jar File2: /home/eddy/.gradle/caches/modules-2/files-2.1/io.reactivex/rxjava/1.3.0/af000bec2036a2a9d07197c4b03b8966bfc60b03/rxjava-1.3.0.jar

我通过在build.gradle添加以下块来解决这个build.gradle :

packagingOptions { exclude 'META-INF/rxjava.properties' }

我似乎一切正常。 但只是为了确保 - 将RxJava 1和2库作为依赖项可能会导致任何问题?

谢谢,

I have an Android application which relies on RxAndroid (based on RxJava2). I've also added the RxAdnroidBle dependency which still uses RxJava1.

During compilation I had the following error:

Execution failed for task ':app:transformResourcesWithMergeJavaResForDebug'. > com.android.build.api.transform.TransformException: com.android.builder.packaging.DuplicateFileException: Duplicate files copied in APK META-INF/rxjava.properties File1: /home/eddy/.gradle/caches/modules-2/files-2.1/io.reactivex.rxjava2/rxjava/2.1.0/2fdf84dedcaaeabb9d70cde9dbb8aad4eccb80a1/rxjava-2.1.0.jar File2: /home/eddy/.gradle/caches/modules-2/files-2.1/io.reactivex/rxjava/1.3.0/af000bec2036a2a9d07197c4b03b8966bfc60b03/rxjava-1.3.0.jar

Which I solved by adding the following block to build.gradle:

packagingOptions { exclude 'META-INF/rxjava.properties' }

I seems that everything works fine. But just to make sure - having both RxJava 1 & 2 libraries as dependencies may cause any problems?

Thanks,

最满意答案

它们生活在不同的包装中,因此您可以一起使用它们

来自官方文件

为了允许RxJava 1.x和RxJava 2.x并排,RxJava 2.x位于maven坐标下io.reactivex.rxjava2:rxjava:2.xy,类可以在io.reactivex下访问

在这里,我们可以看到它们可以在一个项目中并排

https://github.com/ReactiveX/RxJava/wiki/What%27s-different-in-2.0

They live in different packages, so you can use them together

From oficial documentation

To allow having RxJava 1.x and RxJava 2.x side-by-side, RxJava 2.x is under the maven coordinates io.reactivex.rxjava2:rxjava:2.x.y and classes are accessible below io.reactivex

Here we can see they can be side-by-side in one project

https://github.com/ReactiveX/RxJava/wiki/What%27s-different-in-2.0

更多推荐

本文发布于:2023-08-02 21:27:00,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1381925.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:项目   在同一个   RxAndroidBle   project

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!