【问题标题】:add google ml-kit dependecy outside the app-level gradle file在应用级 gradle 文件之外添加 google ml-kit 依赖项
【发布时间】:2021-12-19 08:03:45
【问题描述】:

我正在关注 Google 的 instructions,了解如何在我的应用程序中实现“Google ML Kit”。它说

Before you begin
In your project-level build.gradle file, make sure to include Google's Maven repository in both your buildscript and allprojects sections.
Add the dependencies for the ML Kit Android libraries to your module's app-level gradle file, which is usually app/build.gradle:


dependencies {
  // If you want to use the base sdk
  implementation 'com.google.mlkit:pose-detection:17.0.1-beta6'
  // If you want to use the accurate sdk
  implementation 'com.google.mlkit:pose-detection-accurate:17.0.1-beta6'
}

但是,我需要在我的应用程序之外的库中使用 ML-Kit。它基本上是一个 java 库,可以在我的应用程序中使用。它还有一个 gradle 文件。但是,当我在那里添加依赖项时,我无法导入任何 ml-kit 类。

这是我的 java 库的 gradle 文件:

apply plugin: 'java-library'


dependencies {

    api 'com.annimon:stream:1.2.2'

    api 'org.javatuples:javatuples:1.2'
    api 'com.google.guava:guava:30.1.1-jre'

    // JSON
    implementation 'org.json:json:20210307'
    implementation 'androidx.annotation:annotation:1.2.0'
    implementation 'com.fasterxml.jackson.core:jackson-databind:2.12.4'
    implementation 'com.google.mlkit:pose-detection:17.0.1-beta6'
}

sourceCompatibility = "8"
targetCompatibility = "8"

gradle 同步仍然成功,但是在我的 java 库的任何其他类中导入任何类时,我收到导入错误:

import com.google.mlkit.vision.pose.defaults.PoseDetectorOptions;

--> 无法解析符号mlkit

知道我能做些什么吗?

【问题讨论】:

  • 这是 ML Kit 特有的问题还是 gradle 设置的一般问题?你能用其他库做到这一点吗?
  • 例如,如果这个库是唯一的依赖于实现“androidx.lifecycle:lifecycle-livedata:2.3.1”,你可以导入androidx.lifecycle.LiveData并成功构建?

标签: google-mlkit


【解决方案1】:

同时我发现了问题:上面的gradle文件属于纯java库,后来集成到android中。 ML-Kit 显然不能用于 Java 项目。仅当我将 ML-Kit 集成到纯 android gradle 项目中时它才有效

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-08-05
    • 2021-06-04
    • 2021-09-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-07
    • 1970-01-01
    相关资源
    最近更新 更多