Несколько зависимостей имеют похожий названный класс, и я получаю повторяющиеся ошибки класса. Чтобы решить, я думаю, что исключение этих частей может помочь. Как исключить эти части?
Ошибки + много похожих строк:
Duplicate class com.google.protobuf.AbstractMessageLite found in modules protobuf-java-3.7.1.jar (com.google.protobuf:protobuf-java:3.7.1) and protobuf-lite-3.0.1.jar (com.google.protobuf:protobuf-lite:3.0.1)
Duplicate class com.google.protobuf.AbstractMessageLite$Builder found in modules protobuf-java-3.7.1.jar (com.google.protobuf:protobuf-java:3.7.1) and protobuf-lite-3.0.1.jar (com.google.protobuf:protobuf-lite:3.0.1)
Duplicate class com.google.protobuf.AbstractMessageLite$Builder$LimitedInputStream found in modules protobuf-java-3.7.1.jar (com.google.protobuf:protobuf-java:3.7.1) and protobuf-lite-3.0.1.jar (com.google.protobuf:protobuf-lite:3.0.1)
Зависимость:
// gRPC
implementation "io.grpc:grpc-okhttp:$grpcVersion"
implementation "io.grpc:grpc-protobuf-lite:$grpcVersion"
implementation "io.grpc:grpc-stub:$grpcVersion"
implementation 'javax.annotation:javax.annotation-api:1.3.2'
//protobuf 'com.google.protobuf:protobuf-java:3.8.0'//error persist with this and without this
// OAuth2 for Google API
implementation('com.google.auth:google-auth-library-oauth2-http:0.7.0') {
exclude module: 'httpclient'
}
//Translation
implementation "com.google.cloud:google-cloud-translate:$grpcVersion"
implementation('com.google.cloud:google-cloud-translate:1.79.0') {
exclude group: 'org.apache.httpcomponents'
exclude group: 'org.json', module: 'json'
//I want to exclude error classes here...HOW?...
//exclude group: 'com.google.protobuf', module: 'protobuf-java-3.7.1'
}
annotationProcessor "com.google.cloud:google-cloud-translate:$grpcVersion"
версия grpc на ext:
grpcVersion = '1.4.0'
они не связаны с поддерживаемыми версиями библиотек, так как это из-за библиотек translation и protobuf-lite . они используют разные версии этого класса, и я не знаю, будет ли исключение из них работать или нет.
Можно ли извлечь эти библиотеки и изменить имена классов?
Я хочу посмотреть, может ли исключение из этих классов решить эту проблему. Как исключить?