【问题标题】:JScience unit of measurement library incompatible with androidJScience计量单位库与android不兼容
【发布时间】:2019-05-07 04:52:03
【问题描述】:

我在我的 android 应用程序中有一个用例,我需要保存一个数量,对其执行计算,并以用户选择的单位(从预定义的列表中)显示它。

JScience 完美地满足了这个需求,但是由于以下错误,我无法为 Android 编译应用程序:

Error: Program type already present: javolution.ContextTestSuite$1

我注意到 JSCience 是由 javolution 驱动的。这给我留下了两个选择:找到一个不同的库(我找到了 JSR-363 API,但除了this SO response 中的链接中讨论的几个用例之外,我无法找到关于它的文档;例如,那些链接没有讨论具体的单元类型以及在哪里可以找到它们)或修复我在 JScience 和 Android 之间遇到的不兼容问题。

我会接受一个解决方案。

【问题讨论】:

    标签: java android jscience jsr363 jsr-275


    【解决方案1】:

    不确定还有什么用,但这是由于javolution的双重依赖造成的。可以做的是在build.gradle(Module app)文件中,包含jscience的时候可以排除javolution。

    dependencies {
        implementation 'com.android.support:support-v4:28.0.0'
        ...
        implementation('org.jscience:jscience:4.3.1') {
            exclude group: "org.javolution"
        }
    }
    

    清理/重建项目,它应该可以工作。

    【讨论】:

      猜你喜欢
      • 2023-03-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-06
      • 2016-07-22
      • 1970-01-01
      • 2016-02-28
      相关资源
      最近更新 更多