Eu estou tentando construir um projeto android que tem dois módulos, um é uma aplicação e outra é uma biblioteca. Ambos os módulos possuem Gson-2.8.5.jar arquivos incluídos em suas respectivas libs pasta. Quando eu implantar o aplicativo, ele falha durante a compilação com a seguinte mensagem de erro.
Program type already present: com.google.gson.FieldNamingPolicy$6
Message{kind=ERROR, text=Program type already present: com.google.gson.FieldNamingPolicy$6, sources=[Unknown source file], tool name=Optional.of(D8)}
No entanto, eu testei a minha configuração, substituindo difícil fornecidos arquivos .jar dependências com o Gradle ( implementação 'com.google.code.gson: Gson: 2.8.5' ) e funcionou muito bem. Mas eu tenho que usar arquivos jar na pasta libs desde que eu vou usar Android.mk arquivo para construir todo o projeto mais tarde, portanto, não pode depender de Gradle injetado dependência.
Eu procurei sobre este erro, mas infelizmente não encontrou quaisquer resultados úteis. Espero que alguém sabe como consertar isso.
Entendi fixo. Parece que eu tinha para marcar transitive
propriedade para false
o meu módulo incluído.
Antes:
implementation project(path: ':myLib')
Depois (correção):
implementation project(path: ':myLib', transitive: false)