Dartでpub.devに自作パッケージ(ライブラリ)を公開する方法についてまとめました。
【pub.dev】自作パッケージ(ライブラリ)を公開
汎用的なコードはpub.devへパッケージとして公開すれば、pubspec.yamlへ指定するだけで自分や他の人が使うことができます。
今回は「test_app」という名前のパッケージ(ライブラリ)をpub.devにアップロードして公開する手順を紹介します。
● 「flutter create –template=package my_project」を実行し、プロジェクトを作成します。
|-- .gitignore |-- CHANGELOG.md |-- LICENSE |-- README.md |-- lib | '-- my_project.dart |-- pubspec.yaml '-- test '-- my_project_test.dart
● 「lib/my_project.dart」にコードを記述します。
※「lib/src」下にファイルに書いたコードはプライベートとなるため、ライブラリのAPIとして公開するコードは、lib直下へ置きます。
● パッケージ公開前に以下の準備と制限の確認が必要です。
項目 | 概要 |
---|---|
LICENSEファイル | 必ずLICENSEファイルがあること(Dartと同じBSD-3-Clauseが推奨されている) |
ファイルサイズの制限 | gzip圧縮後のサイズが10MB以下であること(10MBを超える場合は、複数のパッケージに分割する) |
依存関係 | パッケージは他のpub.devに存在するパッケージ、またはFlutter等のSDKにのみ依存していること |
Googleアカウント | Googleアカウントを持っていること |
README.md | ここに記述したものが、パッケージのページで公開されるメインページになるので、使い方を記述します。 |
CHANGELOG.md | 更新履歴を記述します。パッケージ公開ページのタブに表示されます。 |
pubspec.yaml | パッケージの説明やホームページなど、パッケージページの右側にある、詳細情報を記述します。 |
検証済みパブリッシャーの登録 | 個人のGoogleアカウントより、検証済みパブリッシャーとしてパッケージを公開することが推奨されています。 |
● 公開準備のために以下のコマンドを実行しテストします。
$ dart pub publish --dry-run Publishing material_spacing_checker 0.1.0 to https://pub.dartlang.org: |-- .gitignore |-- CHANGELOG.md |-- LICENSE |-- README.md |-- analysis_options.yaml |-- lib | '-- my_project.dart |-- pubspec.yaml '-- test '-- .gitkeep Package has 0 warnings.
● テストの結果、問題なければ「—dry-run」オプションを外して「dart pub publish」を実行すればパッケージを公開できす。
● 「アップロードしますか」と尋ねられるのでy(はい)を実行します。
Looks great! Are you ready to upload your package (y/n)? y Pub needs your authorization to upload packages on your behalf. In a web browser, go to https://accounts.google.com/o/oauth2/auth?access_type=offline&approval_prompt=force&response_type=code&client_id=xxxxxxx.email Then click "Allow access".
● 表示されたURL「https://accounts.google.com/~_id=xxxxxxx.email」をブラウザで開き、Googleアカウントにログインすると、パッケージがアップロードされます。
Waiting for your authorization... Authorization received, processing... Successfully authorized. Uploading... Successfully uploaded package.
【補足】検証済みパブリッシャーの登録方法
● パッケージのページへアクセスし、「Admin」タブをクリックします。
● 「Select a publisher」で検証済みパブリッシャーをクリックし、「TRANSFAR TO PUBLISHER」をクリックします。
● 検証済みパブリッシャーへ所有権を移すことができます。
【Flutter超入門】使い方とサンプルアプリを解説
Flutterの使い方とサンプルアプリ(iOS、Android、Windows)について入門者向けに解説します。
【Dart入門】基礎文法とサンプルコード集
Dartの基礎文法とサンプルコードについて入門者向けにまとめました。
コメント