Я бы хотел использовать последнюю версию диалогового потока в моем приложении Android. Тем не менее, когда я интегрирую его в приложение, я получаю следующую ошибку сборки:
Не удалось выполнить задачу ': app: mergeDebugJavaResource'. Произошла ошибка при выполнении com. android .build.gradle.internal.tasks.Workers $ ActionFacade. Обнаружено более одного файла с независимым от ОС путем 'META-INF / INDEX.LIST'
Чтобы сузить ошибку, я минимизировал зависимости gradle сборки в тестовом проекте до:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'androidx.appcompat:appcompat:1.1.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'
implementation 'com.google.cloud:google-cloud-dialogflow:1.0.0'
}
Я все еще получаю ту же ошибку, но, по крайней мере, я знаю, что ошибка не вызвана какой-либо другой ошибкой зависимости у меня в моем реальном проекте. После поиска по связанным вопросам форума я попробовал много предложений решения, таких как добавление packageOptions в свой сборочный билд:
packagingOptions {
exclude 'META-INF/DEPENDENCIES'
exclude 'META-INF/LICENSE'
exclude 'META-INF/LICENSE.txt'
exclude 'META-INF/license.txt'
exclude 'META-INF/NOTICE'
exclude 'META-INF/NOTICE.txt'
exclude 'META-INF/notice.txt'
exclude 'META-INF/ASL2.0'
}
и исключение групп из моей реализации диалогового потока:
implementation('com.google.cloud:google-cloud-dialogflow:1.0.0'){
exclude group: 'com.google.api.grpc'
}
Последнее решение Предложение действительно помогает мне построить свой gradle, однако, поскольку библиотека dialogflow основана на grp c, большинство классов больше не доступны, что делает всю библиотеку совершенно бесполезной для меня.
Я имею также пытался использовать более старые версии, такие как 0.120.2, что привело только к той же проблеме.
Кто-нибудь из вас уже решил эту проблему? Я также открыт для использования другой библиотеки для связи с моим агентом dialogflow. Для меня просто важно использовать последний API v2 для доступа к диалоговому потоку (у меня уже есть несколько рабочих проектов с v1), так как v1 очень скоро устареет.
Заранее большое спасибо за вашу помощь!