首页 > 解决方案 > 不同环境的不同导入依赖

问题描述

我有一个 JAR,它需要java.time包提供的一些类,这些类在 Java 8 及更高版本中可用。

但是,JAR 还需要在 Android 上可用,而 Androidjava.time只能在 API 26 及更高版本上使用(我还需要支持较低的 API)。

我可以简单地使用threetenbp,它是最可移植的,并且提供了具有相同类和成员名称的兼容实现(实际上只是提供 JAR 和更改导入包的问题)。

但是,这不是很有效,尤其是在 Android 上,建议使用修改版的threetenbp

现在这给我留下了至少两种不同的包选择,具体取决于我正在构建的环境:在 JDK 上使用java.time.*,在 Android 上使用org.threetenb.bp.*

有没有一种方法可以做到这一点而不必维护我的课程的两个版本?

标签: javaimport

解决方案


推荐阅读