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

时间:2019-05-15 16:14:02

标签: java android import threetenbp java.time

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

假设我有两个同名类,并且我想根据用例/应用程序版本在导入之前导入一个或另一个。有办法吗?

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

我需要使用使用delete_category_path(@category)的重要Java库,但是我还需要支持min sdk 23(Android 6.0)。我可以在Android应用中使用threeThenABP来使用所有java.time API,但是我需要从java.time导入它们。

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

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

1 个答案:

答案 0 :(得分:1)

按照@Ole V.V.的建议,我最终在图书馆项目中使用了threetenbp
然后,在我的Android项目中,我使用了threetenAbp(Android特定版本),并使用gradle将其导入了库。最后,排除库中使用的软件包意味着改为使用threetenAbp

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

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