Flutter: Plugins não podem adicionar dependências em repositórios maven personalizados

Criado em 8 mai. 2017  ·  3Comentários  ·  Fonte: flutter/flutter

Passos para reproduzir

No momento, o plugin image_picker tem uma dependência da biblioteca Android Image Picker Android, que reside no GitHub junto com a biblioteca auxiliar Glide. A extração dessas bibliotecas requer o uso do Jitpack , que é um repositório de pacotes que faz proxy de solicitações para o GIt. Atualmente, o codelab tem uma etapa em que os desenvolvedores ativam o Jitpack adicionando o seguinte ao build.gradle:

allprojects {
    repositories {
        jcenter()
        maven { url "https://jitpack.io" }  // new
    }
}

Seria bom se os plugins pudessem saber que dependem do repositório Jitpack e adicionar essa dependência automaticamente. De forma semelhante no iOS, talvez os plugins também possam adicionar dependências em repositórios de especificações Cocoapods de terceiros.

A desvantagem de corrigir essa limitação é que isso a tornaria menos previsível para o desenvolvedor Flutter, de onde todo o código vem. Então, talvez isso esteja "funcionando como pretendido"? Mas se eles estão usando plugins, eles já estão dependendo do pub para fazer builds. Certamente seria bom se os desenvolvedores pudessem fazer coisas com plugins sem ter que fazer edições build.gradle.

Prioridade um pouco menor, pois isso provavelmente pode ser corrigido de uma maneira que não seja uma alteração de API importante.

/cc @mravn-google @mit-mit @jakobr-google @szakarias

tooling plugin

Comentários muito úteis

Generalizando este bug para cobrir a especificação de uma dependência em qualquer repositório maven personalizado:
maven { url '<maven_repo_url>' }

Além do exemplo original do jitpack, outros casos semelhantes incluem ZenDesk e fabric.io .

Todos 3 comentários

Generalizando este bug para cobrir a especificação de uma dependência em qualquer repositório maven personalizado:
maven { url '<maven_repo_url>' }

Além do exemplo original do jitpack, outros casos semelhantes incluem ZenDesk e fabric.io .

FYI: Este problema está fazendo com que https://github.com/flutter/plugins/pull/141 seja uma mudança importante (mesmo que a API do plugin não seja tocada, estou apenas adicionando novas dependências ao plugin).

cc @mravn-google

Esta página foi útil?
0 / 5 - 0 avaliações