Flutter: プラグインはカスタムMavenリポジトリへの依存関係を追加できません

作成日 2017年05月08日  ·  3コメント  ·  ソース: flutter/flutter

再現する手順

現在、 image_pickerプラグインは、ヘルパーライブラリGlideと一緒にGitHubに存在するAndroid ImagePickerAndroidライブラリに依存しています。 これらのライブラリをプルするには、GItにリクエストをプロキシするパッケージリポジトリであるJitpackを使用する必要があります。 codelabには現在、開発者がbuild.gradleに以下を追加してJitpackを有効にするステップがあります。

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

プラグインがJitpackリポジトリに依存していることを認識し、この依存関係を自動的に追加できれば便利です。 iOSに関連して、おそらくプラグインはサードパーティのCocoapodsスペックリポジトリへの依存関係も追加する可能性があります。

この制限を修正することの欠点は、すべてのコードがどこから来ているのかをFlutter開発者が予測しにくくなることです。 それで、これは「意図したとおりに機能している」のでしょうか。 ただし、プラグインを使用している場合は、ビルドを作成するためにすでにpubに依存しています。 開発者がbuild.gradleを編集せずにプラグインで物事を成し遂げることができれば、確かに素晴らしいでしょう。

これはおそらくAPIの重大な変更ではない方法で修正できるという点で、優先度はやや低くなっています。

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

tooling plugin

最も参考になるコメント

このバグを一般化して、カスタムMavenリポジトリへの依存関係の指定をカバーします。
maven { url '<maven_repo_url>' }

元のjitpackの例に加えて、他の同様のケースにはZenDeskfabric.ioが含まれます。

全てのコメント3件

このバグを一般化して、カスタムMavenリポジトリへの依存関係の指定をカバーします。
maven { url '<maven_repo_url>' }

元のjitpackの例に加えて、他の同様のケースにはZenDeskfabric.ioが含まれます。

参考:この問題により、 https://github.com/flutter/plugins/pull/141が重大な変更になります(プラグインAPIは変更されていませんが、プラグインに新しい依存関係を追加しているだけです)。

cc @ mravn-google

このページは役に立ちましたか?
0 / 5 - 0 評価