如何在 java 中轻松切换导入源?

How to easily switch imports sources in java?

注意:请为这个问题建议一个更好的标题。

假设我有两个同名的 类,我想在编译之前根据 use-case/app 版本导入其中一个。有办法吗?

为什么我需要这个?,你可能会问。

我需要使用一个重要的 java 库,它使用 java.time,但我还需要支持 min sdk 23 (Android 6.0)。我可以在我的 Android 应用程序中使用 threeThenABP 来使用所有 java.time API,但我需要从 org.threeten.bp.

导入它们

那个重要的图书馆实际上是私人的。因此,我们的想法是让它使用 java.time 导入或 org.threeten.bp 导入,以便编译与 Android 和桌面 Java 应用程序兼容的 2 个版本。

希望我的解释足够清楚。 谢谢您的帮助。

我最终在库项目中使用了 threetenbp,正如@Ole V.V 所建议的那样。
然后,在我的 android 项目中,我使用 threetenAbp(android 特定版本)并使用 gradle 将其导入库。最后,排除库中使用的包意味着使用 threetenAbp 代替。

implementation ('my-library') {
    exclude group: 'org.threeten'
}

注意:注意 threetenbpthreetenAbp 中的区别 (A)。